ab-angle->ABCF D

Time bar (total: 2.2s)

start0.0ms (0%)

Memory
0.1MiB live, 0.0MiB allocated; 0ms collecting garbage

analyze0.0ms (0%)

Memory
0.3MiB live, 0.3MiB allocated; 0ms collecting garbage
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
100%99.9%0%0.1%0%0%0%1
Compiler

Compiled 10 to 8 computations (20% saved)

sample605.0ms (27.2%)

Memory
6.2MiB live, 605.4MiB allocated; 90ms collecting garbage
Samples
396.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 248.0ms
ival-mult: 196.0ms (79% of total)
ival-neg: 41.0ms (16.5% of total)
ival-true: 5.0ms (2% of total)
ival-assert: 3.0ms (1.2% of total)
adjust: 2.0ms (0.8% of total)
Bogosity

explain93.0ms (4.2%)

Memory
8.9MiB live, 111.4MiB allocated; 48ms collecting garbage
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
281(1.6203806998103927e-294 7.116992900171596e+264)1(-7.028488619702011e-157 1.627682339660557e+128)(*.f64 (*.f64 a a) b)
160-1(1.6203806998103927e-294 7.116992900171596e+264)(*.f64 (*.f64 (*.f64 a a) b) b)
00-0-(*.f64 a a)
00-0-(neg.f64 (*.f64 (*.f64 (*.f64 a a) b) b))
00-0-a
00-0-b
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
*.f64(*.f64 (*.f64 a a) b)n*u150
*.f64(*.f64 (*.f64 a a) b)n*o130
*.f64(*.f64 (*.f64 (*.f64 a a) b) b)n*o90
*.f64(*.f64 (*.f64 (*.f64 a a) b) b)n*u60
Confusion
Predicted +Predicted -
+431
-0212
Precision
1.0
Recall
0.9772727272727273
Confusion?
Predicted +Predicted MaybePredicted -
+4301
-00212
Precision?
1.0
Recall?
0.9772727272727273
Freqs
test
numberfreq
0213
143
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
25.0ms512×0valid
Compiler

Compiled 62 to 22 computations (64.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 13.0ms
ival-mult: 10.0ms (79% of total)
ival-neg: 2.0ms (15.8% of total)
ival-true: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess32.0ms (1.4%)

Memory
-11.1MiB live, 33.4MiB allocated; 10ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01838
16038
224138
354238
478538
579038
068
0108
1248
2818
33038
47198
58448
08448
Stop Event
iter limit
saturated
iter limit
saturated
Calls
Call 1
Inputs
(neg.f64 (*.f64 (*.f64 (*.f64 a a) b) b))
Outputs
(neg.f64 (*.f64 (*.f64 (*.f64 a a) b) b))
(*.f64 (*.f64 b a) (*.f64 (neg.f64 b) a))
Symmetry

(abs b)

(abs a)

(sort a b)

Compiler

Compiled 8 to 6 computations (25% saved)

eval0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated; 0ms collecting garbage
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune0.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated; 0ms collecting garbage
Alt Table
Click to see full alt table
StatusAccuracyProgram
83.0%
(neg.f64 (*.f64 (*.f64 (*.f64 a a) b) b))
Compiler

Compiled 8 to 6 computations (25% saved)

simplify9.0ms (0.4%)

Memory
11.3MiB live, 11.3MiB allocated; 0ms collecting garbage
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 a a)
cost-diff0
(*.f64 (*.f64 a a) b)
cost-diff0
(*.f64 (*.f64 (*.f64 a a) b) b)
cost-diff0
(neg.f64 (*.f64 (*.f64 (*.f64 a a) b) b))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0625
01025
12425
28125
330325
471925
584425
084425
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(neg.f64 (*.f64 (*.f64 (*.f64 a a) b) b))
(*.f64 (*.f64 (*.f64 a a) b) b)
(*.f64 (*.f64 a a) b)
(*.f64 a a)
a
b
Outputs
(neg.f64 (*.f64 (*.f64 (*.f64 a a) b) b))
(*.f64 (*.f64 b a) (*.f64 (neg.f64 b) a))
(*.f64 (*.f64 (*.f64 a a) b) b)
(*.f64 (*.f64 b (*.f64 a a)) b)
(*.f64 (*.f64 a a) b)
(*.f64 b (*.f64 a a))
(*.f64 a a)
a
b

localize24.0ms (1.1%)

Memory
-18.0MiB live, 26.8MiB allocated; 7ms collecting garbage
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(*.f64 a a)
accuracy0.0
(neg.f64 (*.f64 (*.f64 (*.f64 a a) b) b))
accuracy2.944485669024007
(*.f64 (*.f64 (*.f64 a a) b) b)
accuracy7.774597153528254
(*.f64 (*.f64 a a) b)
Samples
12.0ms256×0valid
Compiler

Compiled 27 to 8 computations (70.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 6.0ms
ival-mult: 5.0ms (84.7% of total)
ival-neg: 1.0ms (16.9% of total)
ival-true: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series6.0ms (0.3%)

Memory
9.6MiB live, 9.6MiB allocated; 0ms collecting garbage
Counts
4 → 4
Calls
Call 1
Inputs
(neg.f64 (*.f64 (*.f64 (*.f64 a a) b) b))
(*.f64 (*.f64 (*.f64 a a) b) b)
(*.f64 (*.f64 a a) b)
(*.f64 a a)
Outputs
(* -1 (* (pow a 2) (pow b 2)))
(* (pow a 2) (pow b 2))
(* (pow a 2) b)
(pow a 2)
Calls

6 calls:

TimeVariablePointExpression
1.0ms
a
@inf
((neg (* (* (* a a) b) b)) (* (* (* a a) b) b) (* (* a a) b) (* a a))
1.0ms
a
@0
((neg (* (* (* a a) b) b)) (* (* (* a a) b) b) (* (* a a) b) (* a a))
1.0ms
b
@-inf
((neg (* (* (* a a) b) b)) (* (* (* a a) b) b) (* (* a a) b) (* a a))
1.0ms
b
@0
((neg (* (* (* a a) b) b)) (* (* (* a a) b) b) (* (* a a) b) (* a a))
1.0ms
a
@-inf
((neg (* (* (* a a) b) b)) (* (* (* a a) b) b) (* (* a a) b) (* a a))

simplify151.0ms (6.8%)

Memory
27.3MiB live, 168.4MiB allocated; 30ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0923
11923
26223
327123
491923
5132223
6406623
0836223
Stop Event
iter limit
node limit
Counts
4 → 4
Calls
Call 1
Inputs
(* -1 (* (pow a 2) (pow b 2)))
(* (pow a 2) (pow b 2))
(* (pow a 2) b)
(pow a 2)
Outputs
(* -1 (* (pow a 2) (pow b 2)))
(*.f64 (*.f64 (*.f64 (neg.f64 a) b) b) a)
(* (pow a 2) (pow b 2))
(*.f64 (*.f64 (*.f64 b a) b) a)
(* (pow a 2) b)
(*.f64 (*.f64 a a) b)
(pow a 2)
(*.f64 a a)

rewrite39.0ms (1.7%)

Memory
-3.2MiB live, 42.3MiB allocated; 6ms collecting garbage
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0623
01022
12622
29418
041418
Stop Event
iter limit
iter limit
iter limit
unsound
iter limit
Counts
4 → 112
Calls
Call 1
Inputs
(neg.f64 (*.f64 (*.f64 (*.f64 a a) b) b))
(*.f64 (*.f64 (*.f64 a a) b) b)
(*.f64 (*.f64 a a) b)
(*.f64 a a)
Outputs
(*.f64 (*.f64 (*.f64 a a) (fabs.f64 b)) (fabs.f64 b))
(*.f64 (*.f64 (neg.f64 b) (*.f64 (neg.f64 b) a)) (neg.f64 a))
(*.f64 (*.f64 (fabs.f64 b) (neg.f64 a)) (*.f64 (fabs.f64 b) (neg.f64 a)))
(*.f64 (*.f64 (fabs.f64 b) a) (*.f64 (fabs.f64 b) a))
(*.f64 (*.f64 (neg.f64 b) (neg.f64 a)) (*.f64 (neg.f64 b) (neg.f64 a)))
(*.f64 (*.f64 (neg.f64 b) (neg.f64 a)) (*.f64 (neg.f64 b) a))
(*.f64 (*.f64 (neg.f64 a) (fabs.f64 b)) (*.f64 (neg.f64 a) (fabs.f64 b)))
(*.f64 (*.f64 (neg.f64 a) (neg.f64 b)) (*.f64 (neg.f64 a) (neg.f64 b)))
(*.f64 (*.f64 a (fabs.f64 b)) (*.f64 a (fabs.f64 b)))
(*.f64 (neg.f64 (*.f64 (neg.f64 b) a)) (neg.f64 (*.f64 (neg.f64 b) a)))
(*.f64 (neg.f64 (*.f64 (neg.f64 b) a)) (*.f64 (neg.f64 b) a))
(*.f64 (fabs.f64 (*.f64 (neg.f64 b) a)) (fabs.f64 (*.f64 (neg.f64 b) a)))
(*.f64 (fabs.f64 (*.f64 b a)) (fabs.f64 (*.f64 b a)))
(*.f64 (*.f64 (*.f64 (neg.f64 b) a) b) (neg.f64 a))
(*.f64 (*.f64 (*.f64 (neg.f64 b) a) b) a)
(*.f64 (*.f64 (*.f64 b a) b) a)
(*.f64 (*.f64 (neg.f64 b) b) (*.f64 a a))
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (neg.f64 a) (neg.f64 b)))
(*.f64 (*.f64 (neg.f64 b) a) (neg.f64 (*.f64 (neg.f64 b) a)))
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (neg.f64 b) a))
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 b a))
(*.f64 (fabs.f64 b) (*.f64 (fabs.f64 b) (*.f64 a a)))
(*.f64 (*.f64 b a) (*.f64 (neg.f64 b) a))
(*.f64 (*.f64 b a) (*.f64 b a))
(*.f64 (*.f64 b b) (*.f64 a a))
(*.f64 (neg.f64 b) (*.f64 b (*.f64 a a)))
(*.f64 (neg.f64 a) (*.f64 (neg.f64 a) (*.f64 (neg.f64 b) b)))
(*.f64 (neg.f64 a) (neg.f64 (*.f64 (*.f64 (neg.f64 b) a) b)))
(*.f64 (neg.f64 a) (*.f64 (*.f64 (neg.f64 b) a) b))
(*.f64 (neg.f64 a) (*.f64 (*.f64 b a) b))
(*.f64 (*.f64 b (*.f64 a a)) (neg.f64 b))
(*.f64 (*.f64 b (*.f64 a a)) b)
(*.f64 b (*.f64 b (*.f64 a a)))
(*.f64 (*.f64 a a) (*.f64 (neg.f64 b) b))
(*.f64 (*.f64 a a) (*.f64 b b))
(*.f64 a (*.f64 (*.f64 (neg.f64 b) a) b))
(*.f64 a (*.f64 (*.f64 b a) b))
(pow.f64 (*.f64 (neg.f64 b) a) #s(literal 2 binary64))
(pow.f64 (*.f64 b a) #s(literal 2 binary64))
(neg.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)))
(*.f64 (*.f64 (*.f64 a a) (fabs.f64 b)) (fabs.f64 b))
(*.f64 (*.f64 (neg.f64 b) (*.f64 (neg.f64 b) a)) (neg.f64 a))
(*.f64 (*.f64 (fabs.f64 b) (neg.f64 a)) (*.f64 (fabs.f64 b) (neg.f64 a)))
(*.f64 (*.f64 (fabs.f64 b) a) (*.f64 (fabs.f64 b) a))
(*.f64 (*.f64 (neg.f64 b) (neg.f64 a)) (*.f64 (neg.f64 b) (neg.f64 a)))
(*.f64 (*.f64 (neg.f64 b) (neg.f64 a)) (*.f64 (neg.f64 b) a))
(*.f64 (*.f64 (neg.f64 a) (fabs.f64 b)) (*.f64 (neg.f64 a) (fabs.f64 b)))
(*.f64 (*.f64 (neg.f64 a) (neg.f64 b)) (*.f64 (neg.f64 a) (neg.f64 b)))
(*.f64 (*.f64 a (fabs.f64 b)) (*.f64 a (fabs.f64 b)))
(*.f64 (neg.f64 (*.f64 (neg.f64 b) a)) (neg.f64 (*.f64 (neg.f64 b) a)))
(*.f64 (neg.f64 (*.f64 (neg.f64 b) a)) (*.f64 (neg.f64 b) a))
(*.f64 (fabs.f64 (*.f64 (neg.f64 b) a)) (fabs.f64 (*.f64 (neg.f64 b) a)))
(*.f64 (fabs.f64 (*.f64 b a)) (fabs.f64 (*.f64 b a)))
(*.f64 (*.f64 (*.f64 (neg.f64 b) a) b) (neg.f64 a))
(*.f64 (*.f64 (*.f64 (neg.f64 b) a) b) a)
(*.f64 (*.f64 (*.f64 b a) b) a)
(*.f64 (*.f64 (neg.f64 b) b) (*.f64 a a))
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (neg.f64 a) (neg.f64 b)))
(*.f64 (*.f64 (neg.f64 b) a) (neg.f64 (*.f64 (neg.f64 b) a)))
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (neg.f64 b) a))
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 b a))
(*.f64 (fabs.f64 b) (*.f64 (fabs.f64 b) (*.f64 a a)))
(*.f64 (*.f64 b a) (*.f64 (neg.f64 b) a))
(*.f64 (*.f64 b a) (*.f64 b a))
(*.f64 (*.f64 b b) (*.f64 a a))
(*.f64 (neg.f64 b) (*.f64 b (*.f64 a a)))
(*.f64 (neg.f64 a) (*.f64 (neg.f64 a) (*.f64 (neg.f64 b) b)))
(*.f64 (neg.f64 a) (neg.f64 (*.f64 (*.f64 (neg.f64 b) a) b)))
(*.f64 (neg.f64 a) (*.f64 (*.f64 (neg.f64 b) a) b))
(*.f64 (neg.f64 a) (*.f64 (*.f64 b a) b))
(*.f64 (*.f64 b (*.f64 a a)) (neg.f64 b))
(*.f64 (*.f64 b (*.f64 a a)) b)
(*.f64 b (*.f64 b (*.f64 a a)))
(*.f64 (*.f64 a a) (*.f64 (neg.f64 b) b))
(*.f64 (*.f64 a a) (*.f64 b b))
(*.f64 a (*.f64 (*.f64 (neg.f64 b) a) b))
(*.f64 a (*.f64 (*.f64 b a) b))
(pow.f64 (*.f64 (neg.f64 b) a) #s(literal 2 binary64))
(pow.f64 (*.f64 b a) #s(literal 2 binary64))
(neg.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)))
(*.f64 (*.f64 (neg.f64 b) (neg.f64 a)) (neg.f64 a))
(*.f64 (neg.f64 (*.f64 (neg.f64 b) a)) (neg.f64 a))
(*.f64 (*.f64 (neg.f64 b) a) (neg.f64 a))
(*.f64 (*.f64 (neg.f64 b) a) a)
(*.f64 (*.f64 b a) (neg.f64 a))
(*.f64 (*.f64 b a) a)
(*.f64 (neg.f64 b) (*.f64 a a))
(*.f64 (neg.f64 a) (*.f64 (neg.f64 a) (neg.f64 b)))
(*.f64 (neg.f64 a) (neg.f64 (*.f64 (neg.f64 b) a)))
(*.f64 (neg.f64 a) (*.f64 (neg.f64 b) a))
(*.f64 (neg.f64 a) (*.f64 b a))
(*.f64 b (*.f64 a a))
(*.f64 (*.f64 a a) (neg.f64 b))
(*.f64 (*.f64 a a) b)
(*.f64 a (*.f64 (neg.f64 b) a))
(*.f64 a (*.f64 b a))
(neg.f64 (*.f64 b (*.f64 a a)))
(*.f64 (exp.f64 (log.f64 a)) (exp.f64 (log.f64 a)))
(*.f64 (neg.f64 a) (neg.f64 a))
(*.f64 (neg.f64 a) a)
(*.f64 a (neg.f64 a))
(*.f64 a a)
(pow.f64 (exp.f64 (log.f64 a)) #s(literal 2 binary64))
(pow.f64 (neg.f64 a) #s(literal 2 binary64))
(pow.f64 (*.f64 a a) #s(literal 1 binary64))
(pow.f64 a #s(literal 2 binary64))
(neg.f64 (*.f64 a a))
(sqrt.f64 (*.f64 (*.f64 a a) (*.f64 a a)))
(fabs.f64 (*.f64 a a))
(exp.f64 (*.f64 (log.f64 (neg.f64 a)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 a) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 a) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 a) #s(literal 2 binary64))))

eval7.0ms (0.3%)

Memory
14.5MiB live, 14.5MiB allocated; 0ms collecting garbage
Compiler

Compiled 717 to 199 computations (72.2% saved)

prune32.0ms (1.4%)

Memory
-24.9MiB live, 30.2MiB allocated; 11ms collecting garbage
Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New69776
Fresh000
Picked011
Done000
Total69877
Accuracy
99.9%
Counts
77 → 8
Alt Table
Click to see full alt table
StatusAccuracyProgram
92.5%
(*.f64 (*.f64 (*.f64 (neg.f64 b) a) b) a)
25.2%
(*.f64 (*.f64 (*.f64 b a) b) a)
99.7%
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 b a))
25.5%
(*.f64 (*.f64 b (*.f64 a a)) b)
25.2%
(*.f64 (*.f64 b b) (*.f64 a a))
25.3%
(*.f64 (*.f64 b a) (*.f64 b a))
95.3%
(neg.f64 (*.f64 (*.f64 (*.f64 b a) a) b))
83.0%
(neg.f64 (*.f64 (*.f64 (*.f64 a a) b) b))
Compiler

Compiled 112 to 80 computations (28.6% saved)

simplify10.0ms (0.4%)

Memory
9.8MiB live, 9.8MiB allocated; 0ms collecting garbage
Localize:

Found 15 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 b a)
cost-diff0
(*.f64 (*.f64 b a) b)
cost-diff0
(*.f64 (*.f64 (*.f64 b a) b) a)
cost-diff0
(*.f64 a a)
cost-diff0
(*.f64 b (*.f64 a a))
cost-diff0
(*.f64 (*.f64 b (*.f64 a a)) b)
cost-diff0
(*.f64 a a)
cost-diff0
(*.f64 b b)
cost-diff0
(*.f64 (*.f64 b b) (*.f64 a a))
cost-diff0
(*.f64 b a)
cost-diff0
(*.f64 (*.f64 b a) (*.f64 b a))
cost-diff0
(*.f64 b a)
cost-diff0
(neg.f64 b)
cost-diff0
(*.f64 (neg.f64 b) a)
cost-diff0
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 b a))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01480
02680
15680
216380
357480
477480
077480
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 b a))
(*.f64 (neg.f64 b) a)
(neg.f64 b)
b
a
(*.f64 b a)
(*.f64 (*.f64 b a) (*.f64 b a))
(*.f64 b a)
b
a
(*.f64 (*.f64 b b) (*.f64 a a))
(*.f64 b b)
b
(*.f64 a a)
a
(*.f64 (*.f64 b (*.f64 a a)) b)
(*.f64 b (*.f64 a a))
b
(*.f64 a a)
a
(*.f64 (*.f64 (*.f64 b a) b) a)
(*.f64 (*.f64 b a) b)
(*.f64 b a)
b
a
Outputs
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 b a))
(*.f64 (*.f64 (neg.f64 b) b) (*.f64 a a))
(*.f64 (neg.f64 b) a)
(*.f64 a (neg.f64 b))
(neg.f64 b)
b
a
(*.f64 b a)
(*.f64 a b)
(*.f64 (*.f64 b a) (*.f64 b a))
(*.f64 (*.f64 (*.f64 a a) b) b)
(*.f64 b a)
(*.f64 a b)
b
a
(*.f64 (*.f64 b b) (*.f64 a a))
(*.f64 (*.f64 (*.f64 a a) b) b)
(*.f64 b b)
b
(*.f64 a a)
a
(*.f64 (*.f64 b (*.f64 a a)) b)
(*.f64 (*.f64 (*.f64 a a) b) b)
(*.f64 b (*.f64 a a))
(*.f64 (*.f64 a a) b)
b
(*.f64 a a)
a
(*.f64 (*.f64 (*.f64 b a) b) a)
(*.f64 (*.f64 (*.f64 a a) b) b)
(*.f64 (*.f64 b a) b)
(*.f64 (*.f64 b b) a)
(*.f64 b a)
(*.f64 a b)
b
a

localize41.0ms (1.9%)

Memory
3.9MiB live, 50.3MiB allocated; 4ms collecting garbage
Localize:

Found 15 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(*.f64 b a)
accuracy0.1328125
(*.f64 (*.f64 b a) b)
accuracy4.736484812790451
(*.f64 (*.f64 (*.f64 b a) b) a)
accuracy0.0
(*.f64 a a)
accuracy2.944485669024007
(*.f64 (*.f64 b (*.f64 a a)) b)
accuracy7.774597153528254
(*.f64 b (*.f64 a a))
accuracy0.0
(*.f64 b b)
accuracy0.0
(*.f64 a a)
accuracy15.190688721455583
(*.f64 (*.f64 b b) (*.f64 a a))
accuracy0.0
(*.f64 b a)
accuracy0.20378876953688402
(*.f64 (*.f64 b a) (*.f64 b a))
accuracy0.0
(*.f64 (neg.f64 b) a)
accuracy0.0
(*.f64 b a)
accuracy0.0
(neg.f64 b)
accuracy0.20378876953688402
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 b a))
Samples
29.0ms256×0valid
Compiler

Compiled 82 to 16 computations (80.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 17.0ms
ival-mult: 15.0ms (88.5% of total)
ival-neg: 1.0ms (5.9% of total)
ival-true: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series12.0ms (0.5%)

Memory
-31.1MiB live, 15.4MiB allocated; 2ms collecting garbage
Counts
12 → 9
Calls
Call 1
Inputs
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 b a))
(*.f64 (neg.f64 b) a)
(neg.f64 b)
(*.f64 b a)
(*.f64 (*.f64 b a) (*.f64 b a))
(*.f64 (*.f64 b b) (*.f64 a a))
(*.f64 b b)
(*.f64 a a)
(*.f64 (*.f64 b (*.f64 a a)) b)
(*.f64 b (*.f64 a a))
(*.f64 (*.f64 (*.f64 b a) b) a)
(*.f64 (*.f64 b a) b)
Outputs
(* -1 (* (pow a 2) (pow b 2)))
(* -1 (* a b))
(* a b)
(* (pow a 2) (pow b 2))
(pow a 2)
(* (pow a 2) b)
(* a (pow b 2))
(* -1 b)
(pow b 2)
Calls

6 calls:

TimeVariablePointExpression
3.0ms
a
@-inf
((* (* (neg b) a) (* b a)) (* (neg b) a) (neg b) (* b a) (* (* b a) (* b a)) (* (* b b) (* a a)) (* b b) (* a a) (* (* b (* a a)) b) (* b (* a a)) (* (* (* b a) b) a) (* (* b a) b))
2.0ms
a
@0
((* (* (neg b) a) (* b a)) (* (neg b) a) (neg b) (* b a) (* (* b a) (* b a)) (* (* b b) (* a a)) (* b b) (* a a) (* (* b (* a a)) b) (* b (* a a)) (* (* (* b a) b) a) (* (* b a) b))
2.0ms
b
@inf
((* (* (neg b) a) (* b a)) (* (neg b) a) (neg b) (* b a) (* (* b a) (* b a)) (* (* b b) (* a a)) (* b b) (* a a) (* (* b (* a a)) b) (* b (* a a)) (* (* (* b a) b) a) (* (* b a) b))
2.0ms
b
@-inf
((* (* (neg b) a) (* b a)) (* (neg b) a) (neg b) (* b a) (* (* b a) (* b a)) (* (* b b) (* a a)) (* b b) (* a a) (* (* b (* a a)) b) (* b (* a a)) (* (* (* b a) b) a) (* (* b a) b))
1.0ms
a
@inf
((* (* (neg b) a) (* b a)) (* (neg b) a) (neg b) (* b a) (* (* b a) (* b a)) (* (* b b) (* a a)) (* b b) (* a a) (* (* b (* a a)) b) (* b (* a a)) (* (* (* b a) b) a) (* (* b a) b))

simplify94.0ms (4.2%)

Memory
33.0MiB live, 79.0MiB allocated; 2ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01340
13140
27540
323740
493540
5229940
6484440
0809340
Stop Event
iter limit
node limit
Counts
9 → 9
Calls
Call 1
Inputs
(* -1 (* (pow a 2) (pow b 2)))
(* -1 (* a b))
(* a b)
(* (pow a 2) (pow b 2))
(pow a 2)
(* (pow a 2) b)
(* a (pow b 2))
(* -1 b)
(pow b 2)
Outputs
(* -1 (* (pow a 2) (pow b 2)))
(*.f64 (*.f64 (*.f64 (neg.f64 b) b) a) a)
(* -1 (* a b))
(*.f64 (neg.f64 a) b)
(* a b)
(*.f64 a b)
(* (pow a 2) (pow b 2))
(*.f64 (*.f64 a b) (*.f64 a b))
(pow a 2)
(*.f64 a a)
(* (pow a 2) b)
(*.f64 (*.f64 a a) b)
(* a (pow b 2))
(*.f64 (*.f64 b b) a)
(* -1 b)
(neg.f64 b)
(pow b 2)
(*.f64 b b)

rewrite58.0ms (2.6%)

Memory
-19.1MiB live, 31.7MiB allocated; 6ms collecting garbage
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01461
02665
16055
219150
088150
Stop Event
iter limit
iter limit
iter limit
unsound
iter limit
Counts
12 → 223
Calls
Call 1
Inputs
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 b a))
(*.f64 (neg.f64 b) a)
(neg.f64 b)
(*.f64 b a)
(*.f64 (*.f64 b a) (*.f64 b a))
(*.f64 (*.f64 b b) (*.f64 a a))
(*.f64 b b)
(*.f64 a a)
(*.f64 (*.f64 b (*.f64 a a)) b)
(*.f64 b (*.f64 a a))
(*.f64 (*.f64 (*.f64 b a) b) a)
(*.f64 (*.f64 b a) b)
Outputs
(*.f64 (exp.f64 (log.f64 (*.f64 a b))) (exp.f64 (log.f64 (*.f64 a b))))
(*.f64 (neg.f64 a) (*.f64 (*.f64 b b) a))
(*.f64 (*.f64 (*.f64 b b) a) (neg.f64 a))
(*.f64 (*.f64 (*.f64 b b) a) a)
(*.f64 (*.f64 (*.f64 a a) b) (neg.f64 b))
(*.f64 (*.f64 (*.f64 a a) b) b)
(*.f64 (*.f64 a a) (*.f64 b b))
(*.f64 (*.f64 b b) (*.f64 a a))
(*.f64 (*.f64 a b) (*.f64 a b))
(*.f64 (*.f64 a b) (*.f64 a (neg.f64 b)))
(*.f64 (*.f64 a (neg.f64 b)) (*.f64 a b))
(*.f64 (*.f64 a (neg.f64 b)) (*.f64 a (neg.f64 b)))
(*.f64 a (*.f64 (*.f64 b b) a))
(*.f64 (neg.f64 b) (*.f64 (*.f64 a a) b))
(*.f64 b (*.f64 (*.f64 a a) b))
(pow.f64 (exp.f64 (log.f64 (*.f64 a b))) #s(literal 2 binary64))
(pow.f64 (pow.f64 (*.f64 a b) #s(literal 2 binary64)) #s(literal 1 binary64))
(pow.f64 (*.f64 a b) #s(literal 2 binary64))
(pow.f64 (*.f64 a (neg.f64 b)) #s(literal 2 binary64))
(neg.f64 (pow.f64 (*.f64 a b) #s(literal 2 binary64)))
(sqrt.f64 (*.f64 (pow.f64 (*.f64 a b) #s(literal 2 binary64)) (pow.f64 (*.f64 a b) #s(literal 2 binary64))))
(fabs.f64 (pow.f64 (*.f64 a b) #s(literal 2 binary64)))
(exp.f64 (fma.f64 (log.f64 a) #s(literal 2 binary64) (*.f64 (log.f64 b) #s(literal 2 binary64))))
(exp.f64 (fma.f64 (log.f64 b) #s(literal 2 binary64) (*.f64 (log.f64 a) #s(literal 2 binary64))))
(exp.f64 (*.f64 (log.f64 (*.f64 a (neg.f64 b))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 a b)) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 (*.f64 a b)) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 (*.f64 a b)) #s(literal 2 binary64))))
(*.f64 (neg.f64 a) b)
(*.f64 a (neg.f64 b))
(*.f64 (neg.f64 b) a)
(*.f64 b (neg.f64 a))
(neg.f64 (*.f64 a b))
(neg.f64 b)
(*.f64 (pow.f64 (*.f64 a b) #s(literal 1/2 binary64)) (pow.f64 (*.f64 a b) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 (*.f64 a b)))
(*.f64 (sqrt.f64 (*.f64 a (neg.f64 b))) (sqrt.f64 (*.f64 a (neg.f64 b))))
(*.f64 (sqrt.f64 (*.f64 (*.f64 b b) a)) (sqrt.f64 (neg.f64 a)))
(*.f64 (sqrt.f64 (*.f64 (*.f64 b b) a)) (sqrt.f64 a))
(*.f64 (sqrt.f64 (neg.f64 b)) (sqrt.f64 (*.f64 (*.f64 a a) b)))
(*.f64 (sqrt.f64 (*.f64 (*.f64 a a) b)) (sqrt.f64 (neg.f64 b)))
(*.f64 (sqrt.f64 (*.f64 (*.f64 a a) b)) (sqrt.f64 b))
(*.f64 (sqrt.f64 b) (sqrt.f64 (*.f64 (*.f64 a a) b)))
(*.f64 (sqrt.f64 (neg.f64 a)) (sqrt.f64 (*.f64 (*.f64 b b) a)))
(*.f64 (sqrt.f64 a) (sqrt.f64 (*.f64 (*.f64 b b) a)))
(*.f64 (neg.f64 a) (neg.f64 b))
(*.f64 a b)
(*.f64 (neg.f64 b) (neg.f64 a))
(*.f64 b a)
(pow.f64 (pow.f64 (*.f64 a b) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (*.f64 a b) #s(literal 1 binary64))
(pow.f64 (*.f64 a (neg.f64 b)) #s(literal 1 binary64))
(neg.f64 (*.f64 a (neg.f64 b)))
(sqrt.f64 (pow.f64 (*.f64 a b) #s(literal 2 binary64)))
(fabs.f64 (*.f64 a b))
(fabs.f64 (*.f64 a (neg.f64 b)))
(exp.f64 (/.f64 (*.f64 (log.f64 (*.f64 a b)) #s(literal 2 binary64)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 a b)) #s(literal 1 binary64)))
(*.f64 (exp.f64 (log.f64 (*.f64 a b))) (exp.f64 (log.f64 (*.f64 a b))))
(*.f64 (neg.f64 a) (*.f64 (*.f64 b b) a))
(*.f64 (*.f64 (*.f64 b b) a) (neg.f64 a))
(*.f64 (*.f64 (*.f64 b b) a) a)
(*.f64 (*.f64 (*.f64 a a) b) (neg.f64 b))
(*.f64 (*.f64 (*.f64 a a) b) b)
(*.f64 (*.f64 a a) (*.f64 b b))
(*.f64 (*.f64 b b) (*.f64 a a))
(*.f64 (*.f64 a b) (*.f64 a b))
(*.f64 (*.f64 a b) (*.f64 a (neg.f64 b)))
(*.f64 (*.f64 a (neg.f64 b)) (*.f64 a b))
(*.f64 (*.f64 a (neg.f64 b)) (*.f64 a (neg.f64 b)))
(*.f64 a (*.f64 (*.f64 b b) a))
(*.f64 (neg.f64 b) (*.f64 (*.f64 a a) b))
(*.f64 b (*.f64 (*.f64 a a) b))
(pow.f64 (exp.f64 (log.f64 (*.f64 a b))) #s(literal 2 binary64))
(pow.f64 (pow.f64 (*.f64 a b) #s(literal 2 binary64)) #s(literal 1 binary64))
(pow.f64 (*.f64 a b) #s(literal 2 binary64))
(pow.f64 (*.f64 a (neg.f64 b)) #s(literal 2 binary64))
(neg.f64 (pow.f64 (*.f64 a b) #s(literal 2 binary64)))
(sqrt.f64 (*.f64 (pow.f64 (*.f64 a b) #s(literal 2 binary64)) (pow.f64 (*.f64 a b) #s(literal 2 binary64))))
(fabs.f64 (pow.f64 (*.f64 a b) #s(literal 2 binary64)))
(exp.f64 (fma.f64 (log.f64 a) #s(literal 2 binary64) (*.f64 (log.f64 b) #s(literal 2 binary64))))
(exp.f64 (fma.f64 (log.f64 b) #s(literal 2 binary64) (*.f64 (log.f64 a) #s(literal 2 binary64))))
(exp.f64 (*.f64 (log.f64 (*.f64 a (neg.f64 b))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 a b)) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 (*.f64 a b)) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 (*.f64 a b)) #s(literal 2 binary64))))
(*.f64 (exp.f64 (log.f64 (*.f64 a b))) (exp.f64 (log.f64 (*.f64 a b))))
(*.f64 (neg.f64 a) (*.f64 (*.f64 b b) a))
(*.f64 (*.f64 (*.f64 b b) a) (neg.f64 a))
(*.f64 (*.f64 (*.f64 b b) a) a)
(*.f64 (*.f64 (*.f64 a a) b) (neg.f64 b))
(*.f64 (*.f64 (*.f64 a a) b) b)
(*.f64 (*.f64 a a) (*.f64 b b))
(*.f64 (*.f64 b b) (*.f64 a a))
(*.f64 (*.f64 a b) (*.f64 a b))
(*.f64 (*.f64 a b) (*.f64 a (neg.f64 b)))
(*.f64 (*.f64 a (neg.f64 b)) (*.f64 a b))
(*.f64 (*.f64 a (neg.f64 b)) (*.f64 a (neg.f64 b)))
(*.f64 a (*.f64 (*.f64 b b) a))
(*.f64 (neg.f64 b) (*.f64 (*.f64 a a) b))
(*.f64 b (*.f64 (*.f64 a a) b))
(pow.f64 (exp.f64 (log.f64 (*.f64 a b))) #s(literal 2 binary64))
(pow.f64 (pow.f64 (*.f64 a b) #s(literal 2 binary64)) #s(literal 1 binary64))
(pow.f64 (*.f64 a b) #s(literal 2 binary64))
(pow.f64 (*.f64 a (neg.f64 b)) #s(literal 2 binary64))
(neg.f64 (pow.f64 (*.f64 a b) #s(literal 2 binary64)))
(sqrt.f64 (*.f64 (pow.f64 (*.f64 a b) #s(literal 2 binary64)) (pow.f64 (*.f64 a b) #s(literal 2 binary64))))
(fabs.f64 (pow.f64 (*.f64 a b) #s(literal 2 binary64)))
(exp.f64 (fma.f64 (log.f64 a) #s(literal 2 binary64) (*.f64 (log.f64 b) #s(literal 2 binary64))))
(exp.f64 (fma.f64 (log.f64 b) #s(literal 2 binary64) (*.f64 (log.f64 a) #s(literal 2 binary64))))
(exp.f64 (*.f64 (log.f64 (*.f64 a (neg.f64 b))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 a b)) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 (*.f64 a b)) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 (*.f64 a b)) #s(literal 2 binary64))))
(*.f64 (exp.f64 (log.f64 b)) (exp.f64 (log.f64 b)))
(*.f64 (neg.f64 b) (neg.f64 b))
(*.f64 (neg.f64 b) b)
(*.f64 b (neg.f64 b))
(*.f64 b b)
(pow.f64 (exp.f64 (log.f64 b)) #s(literal 2 binary64))
(pow.f64 (*.f64 b b) #s(literal 1 binary64))
(pow.f64 (neg.f64 b) #s(literal 2 binary64))
(pow.f64 b #s(literal 2 binary64))
(neg.f64 (*.f64 b b))
(sqrt.f64 (*.f64 (*.f64 b b) (*.f64 b b)))
(fabs.f64 (*.f64 b b))
(exp.f64 (*.f64 (log.f64 (neg.f64 b)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 b) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 b) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 b) #s(literal 2 binary64))))
(*.f64 (exp.f64 (log.f64 a)) (exp.f64 (log.f64 a)))
(*.f64 (neg.f64 a) (neg.f64 a))
(*.f64 (neg.f64 a) a)
(*.f64 a (neg.f64 a))
(*.f64 a a)
(pow.f64 (exp.f64 (log.f64 a)) #s(literal 2 binary64))
(pow.f64 (neg.f64 a) #s(literal 2 binary64))
(pow.f64 (*.f64 a a) #s(literal 1 binary64))
(pow.f64 a #s(literal 2 binary64))
(neg.f64 (*.f64 a a))
(sqrt.f64 (*.f64 (*.f64 a a) (*.f64 a a)))
(fabs.f64 (*.f64 a a))
(exp.f64 (*.f64 (log.f64 (neg.f64 a)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 a) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 a) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 a) #s(literal 2 binary64))))
(*.f64 (exp.f64 (log.f64 (*.f64 a b))) (exp.f64 (log.f64 (*.f64 a b))))
(*.f64 (neg.f64 a) (*.f64 (*.f64 b b) a))
(*.f64 (*.f64 (*.f64 b b) a) (neg.f64 a))
(*.f64 (*.f64 (*.f64 b b) a) a)
(*.f64 (*.f64 (*.f64 a a) b) (neg.f64 b))
(*.f64 (*.f64 (*.f64 a a) b) b)
(*.f64 (*.f64 a a) (*.f64 b b))
(*.f64 (*.f64 b b) (*.f64 a a))
(*.f64 (*.f64 a b) (*.f64 a b))
(*.f64 (*.f64 a b) (*.f64 a (neg.f64 b)))
(*.f64 (*.f64 a (neg.f64 b)) (*.f64 a b))
(*.f64 (*.f64 a (neg.f64 b)) (*.f64 a (neg.f64 b)))
(*.f64 a (*.f64 (*.f64 b b) a))
(*.f64 (neg.f64 b) (*.f64 (*.f64 a a) b))
(*.f64 b (*.f64 (*.f64 a a) b))
(pow.f64 (exp.f64 (log.f64 (*.f64 a b))) #s(literal 2 binary64))
(pow.f64 (pow.f64 (*.f64 a b) #s(literal 2 binary64)) #s(literal 1 binary64))
(pow.f64 (*.f64 a b) #s(literal 2 binary64))
(pow.f64 (*.f64 a (neg.f64 b)) #s(literal 2 binary64))
(neg.f64 (pow.f64 (*.f64 a b) #s(literal 2 binary64)))
(sqrt.f64 (*.f64 (pow.f64 (*.f64 a b) #s(literal 2 binary64)) (pow.f64 (*.f64 a b) #s(literal 2 binary64))))
(fabs.f64 (pow.f64 (*.f64 a b) #s(literal 2 binary64)))
(exp.f64 (fma.f64 (log.f64 a) #s(literal 2 binary64) (*.f64 (log.f64 b) #s(literal 2 binary64))))
(exp.f64 (fma.f64 (log.f64 b) #s(literal 2 binary64) (*.f64 (log.f64 a) #s(literal 2 binary64))))
(exp.f64 (*.f64 (log.f64 (*.f64 a (neg.f64 b))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 a b)) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 (*.f64 a b)) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 (*.f64 a b)) #s(literal 2 binary64))))
(*.f64 (neg.f64 a) (*.f64 a b))
(*.f64 (neg.f64 a) (*.f64 a (neg.f64 b)))
(*.f64 (*.f64 a a) (neg.f64 b))
(*.f64 (*.f64 a a) b)
(*.f64 (*.f64 a b) (neg.f64 a))
(*.f64 (*.f64 a b) a)
(*.f64 (*.f64 a (neg.f64 b)) (neg.f64 a))
(*.f64 (*.f64 a (neg.f64 b)) a)
(*.f64 a (*.f64 a b))
(*.f64 a (*.f64 a (neg.f64 b)))
(*.f64 (neg.f64 b) (*.f64 a a))
(*.f64 b (*.f64 a a))
(neg.f64 (*.f64 (*.f64 a a) b))
(fabs.f64 (*.f64 (*.f64 a a) b))
(*.f64 (exp.f64 (log.f64 (*.f64 a b))) (exp.f64 (log.f64 (*.f64 a b))))
(*.f64 (neg.f64 a) (*.f64 (*.f64 b b) a))
(*.f64 (*.f64 (*.f64 b b) a) (neg.f64 a))
(*.f64 (*.f64 (*.f64 b b) a) a)
(*.f64 (*.f64 (*.f64 a a) b) (neg.f64 b))
(*.f64 (*.f64 (*.f64 a a) b) b)
(*.f64 (*.f64 a a) (*.f64 b b))
(*.f64 (*.f64 b b) (*.f64 a a))
(*.f64 (*.f64 a b) (*.f64 a b))
(*.f64 (*.f64 a b) (*.f64 a (neg.f64 b)))
(*.f64 (*.f64 a (neg.f64 b)) (*.f64 a b))
(*.f64 (*.f64 a (neg.f64 b)) (*.f64 a (neg.f64 b)))
(*.f64 a (*.f64 (*.f64 b b) a))
(*.f64 (neg.f64 b) (*.f64 (*.f64 a a) b))
(*.f64 b (*.f64 (*.f64 a a) b))
(pow.f64 (exp.f64 (log.f64 (*.f64 a b))) #s(literal 2 binary64))
(pow.f64 (pow.f64 (*.f64 a b) #s(literal 2 binary64)) #s(literal 1 binary64))
(pow.f64 (*.f64 a b) #s(literal 2 binary64))
(pow.f64 (*.f64 a (neg.f64 b)) #s(literal 2 binary64))
(neg.f64 (pow.f64 (*.f64 a b) #s(literal 2 binary64)))
(sqrt.f64 (*.f64 (pow.f64 (*.f64 a b) #s(literal 2 binary64)) (pow.f64 (*.f64 a b) #s(literal 2 binary64))))
(fabs.f64 (pow.f64 (*.f64 a b) #s(literal 2 binary64)))
(exp.f64 (fma.f64 (log.f64 a) #s(literal 2 binary64) (*.f64 (log.f64 b) #s(literal 2 binary64))))
(exp.f64 (fma.f64 (log.f64 b) #s(literal 2 binary64) (*.f64 (log.f64 a) #s(literal 2 binary64))))
(exp.f64 (*.f64 (log.f64 (*.f64 a (neg.f64 b))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 a b)) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 (*.f64 a b)) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 (*.f64 a b)) #s(literal 2 binary64))))
(*.f64 (neg.f64 a) (*.f64 b b))
(*.f64 (*.f64 b b) (neg.f64 a))
(*.f64 (*.f64 b b) a)
(*.f64 (*.f64 a b) (neg.f64 b))
(*.f64 (*.f64 a b) b)
(*.f64 (*.f64 a (neg.f64 b)) (neg.f64 b))
(*.f64 (*.f64 a (neg.f64 b)) b)
(*.f64 a (*.f64 b b))
(*.f64 (neg.f64 b) (*.f64 a b))
(*.f64 (neg.f64 b) (*.f64 a (neg.f64 b)))
(*.f64 b (*.f64 a b))
(*.f64 b (*.f64 a (neg.f64 b)))
(neg.f64 (*.f64 (*.f64 b b) a))
(fabs.f64 (*.f64 (*.f64 b b) a))

eval46.0ms (2.1%)

Memory
-17.4MiB live, 27.8MiB allocated; 5ms collecting garbage
Compiler

Compiled 2 172 to 395 computations (81.8% saved)

prune30.0ms (1.4%)

Memory
0.6MiB live, 44.8MiB allocated; 5ms collecting garbage
Pruning

11 alts after pruning (6 fresh and 5 done)

PrunedKeptTotal
New2105215
Fresh112
Picked145
Done011
Total21211223
Accuracy
100.0%
Counts
223 → 11
Alt Table
Click to see full alt table
StatusAccuracyProgram
92.5%
(*.f64 (*.f64 (*.f64 (neg.f64 b) a) b) a)
25.1%
(*.f64 (*.f64 (*.f64 b b) a) a)
95.3%
(*.f64 (*.f64 (*.f64 a (neg.f64 b)) a) b)
25.3%
(*.f64 (*.f64 (*.f64 a b) a) b)
83.0%
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (sqrt.f64 (*.f64 (*.f64 a a) b)) (sqrt.f64 b)))
99.5%
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 (*.f64 a b))))
99.7%
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 b a))
25.5%
(*.f64 (*.f64 b (*.f64 a a)) b)
25.2%
(*.f64 (*.f64 b b) (*.f64 a a))
25.3%
(*.f64 (*.f64 b a) (*.f64 b a))
83.0%
(neg.f64 (*.f64 (*.f64 (*.f64 a a) b) b))
Compiler

Compiled 153 to 106 computations (30.7% saved)

simplify212.0ms (9.5%)

Memory
7.7MiB live, 129.5MiB allocated; 99ms collecting garbage
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
cost-diff0
(neg.f64 b)
cost-diff0
(*.f64 (neg.f64 b) a)
cost-diff0
(*.f64 (*.f64 (neg.f64 b) a) b)
cost-diff1
(*.f64 (*.f64 (*.f64 (neg.f64 b) a) b) a)
cost-diff0
(neg.f64 b)
cost-diff0
(*.f64 a (neg.f64 b))
cost-diff0
(*.f64 (*.f64 a (neg.f64 b)) a)
cost-diff1
(*.f64 (*.f64 (*.f64 a (neg.f64 b)) a) b)
cost-diff0
(*.f64 b b)
cost-diff0
(*.f64 (*.f64 b b) a)
cost-diff1
(*.f64 (*.f64 (*.f64 b b) a) a)
cost-diff0
(*.f64 a b)
cost-diff0
(*.f64 (*.f64 a b) a)
cost-diff1
(*.f64 (*.f64 (*.f64 a b) a) b)
cost-diff0
(neg.f64 b)
cost-diff0
(*.f64 (neg.f64 b) a)
cost-diff1
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 (*.f64 a b))))
cost-diff6
(*.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 (*.f64 a b)))
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
018116
034104
170104
2166104
347799
490399
5126499
6128999
7129999
8133199
9151499
10310899
11613399
0823899
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 (*.f64 a b))))
(*.f64 (neg.f64 b) a)
(neg.f64 b)
b
a
(*.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 (*.f64 a b)))
(sqrt.f64 (*.f64 a b))
(*.f64 a b)
(*.f64 (*.f64 (*.f64 a b) a) b)
(*.f64 (*.f64 a b) a)
(*.f64 a b)
a
b
(*.f64 (*.f64 (*.f64 b b) a) a)
(*.f64 (*.f64 b b) a)
(*.f64 b b)
b
a
(*.f64 (*.f64 (*.f64 a (neg.f64 b)) a) b)
(*.f64 (*.f64 a (neg.f64 b)) a)
(*.f64 a (neg.f64 b))
a
(neg.f64 b)
b
(*.f64 (*.f64 (*.f64 (neg.f64 b) a) b) a)
(*.f64 (*.f64 (neg.f64 b) a) b)
(*.f64 (neg.f64 b) a)
(neg.f64 b)
b
a
Outputs
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 (*.f64 a b))))
(neg.f64 (pow.f64 (sqrt.f64 (*.f64 a b)) #s(literal 4 binary64)))
(*.f64 (neg.f64 b) a)
(*.f64 a (neg.f64 b))
(neg.f64 b)
b
a
(*.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 (*.f64 a b)))
(*.f64 a b)
(sqrt.f64 (*.f64 a b))
(*.f64 a b)
(*.f64 (*.f64 (*.f64 a b) a) b)
(pow.f64 (sqrt.f64 (*.f64 a b)) #s(literal 4 binary64))
(*.f64 (*.f64 a b) a)
(*.f64 a b)
a
b
(*.f64 (*.f64 (*.f64 b b) a) a)
(pow.f64 (sqrt.f64 (*.f64 a b)) #s(literal 4 binary64))
(*.f64 (*.f64 b b) a)
(*.f64 b b)
b
a
(*.f64 (*.f64 (*.f64 a (neg.f64 b)) a) b)
(neg.f64 (pow.f64 (sqrt.f64 (*.f64 a b)) #s(literal 4 binary64)))
(*.f64 (*.f64 a (neg.f64 b)) a)
(*.f64 a (neg.f64 b))
a
(neg.f64 b)
b
(*.f64 (*.f64 (*.f64 (neg.f64 b) a) b) a)
(neg.f64 (pow.f64 (sqrt.f64 (*.f64 a b)) #s(literal 4 binary64)))
(*.f64 (*.f64 (neg.f64 b) a) b)
(*.f64 (*.f64 a (neg.f64 b)) b)
(*.f64 (neg.f64 b) a)
(*.f64 a (neg.f64 b))
(neg.f64 b)
b
a

localize52.0ms (2.3%)

Memory
-28.4MiB live, 63.8MiB allocated; 9ms collecting garbage
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(*.f64 (neg.f64 b) a)
accuracy0.0
(neg.f64 b)
accuracy0.1328125
(*.f64 (*.f64 (neg.f64 b) a) b)
accuracy4.736484812790451
(*.f64 (*.f64 (*.f64 (neg.f64 b) a) b) a)
accuracy0.0
(*.f64 a (neg.f64 b))
accuracy0.0
(neg.f64 b)
accuracy0.140625
(*.f64 (*.f64 a (neg.f64 b)) a)
accuracy2.944485669024007
(*.f64 (*.f64 (*.f64 a (neg.f64 b)) a) b)
accuracy0.0
(*.f64 b b)
accuracy4.736484812790451
(*.f64 (*.f64 (*.f64 b b) a) a)
accuracy6.624263564893442
(*.f64 (*.f64 b b) a)
accuracy0.0
(*.f64 a b)
accuracy0.140625
(*.f64 (*.f64 a b) a)
accuracy2.944485669024007
(*.f64 (*.f64 (*.f64 a b) a) b)
accuracy0.0
(neg.f64 b)
accuracy0.20378876953688402
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 (*.f64 a b))))
accuracy0.39585878907376815
(*.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 (*.f64 a b)))
accuracy16.078244126494077
(sqrt.f64 (*.f64 a b))
Samples
37.0ms256×0valid
Compiler

Compiled 118 to 20 computations (83.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 23.0ms
ival-mult: 20.0ms (86.8% of total)
ival-sqrt: 2.0ms (8.7% of total)
ival-neg: 1.0ms (4.3% of total)
ival-true: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series15.0ms (0.7%)

Memory
20.9MiB live, 20.9MiB allocated; 0ms collecting garbage
Counts
16 → 14
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 (*.f64 a b)))
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 (*.f64 a b))))
(*.f64 (neg.f64 b) a)
(neg.f64 b)
(*.f64 (*.f64 (*.f64 a b) a) b)
(*.f64 (*.f64 a b) a)
(*.f64 a b)
(*.f64 (*.f64 (*.f64 b b) a) a)
(*.f64 (*.f64 b b) a)
(*.f64 b b)
(*.f64 (*.f64 (*.f64 a (neg.f64 b)) a) b)
(*.f64 (*.f64 a (neg.f64 b)) a)
(*.f64 a (neg.f64 b))
(*.f64 (*.f64 (*.f64 (neg.f64 b) a) b) a)
(*.f64 (*.f64 (neg.f64 b) a) b)
(sqrt.f64 (*.f64 a b))
Outputs
(* a b)
(* -1 (* (pow a 2) (pow b 2)))
(* -1 (* a b))
(* (pow a 2) (pow b 2))
(* (pow a 2) b)
(* a (pow b 2))
(* -1 (* (pow a 2) b))
(* -1 (* a (pow b 2)))
(sqrt (* a b))
(* -1 (* a (* b (pow (sqrt -1) 2))))
(* (pow a 2) (* (pow b 2) (pow (sqrt -1) 2)))
(* -1 (* (sqrt (* a b)) (pow (sqrt -1) 2)))
(* -1 b)
(pow b 2)
Calls

6 calls:

TimeVariablePointExpression
4.0ms
a
@-inf
((* (sqrt (* a b)) (sqrt (* a b))) (* (* (neg b) a) (* (sqrt (* a b)) (sqrt (* a b)))) (* (neg b) a) (neg b) (* (* (* a b) a) b) (* (* a b) a) (* a b) (* (* (* b b) a) a) (* (* b b) a) (* b b) (* (* (* a (neg b)) a) b) (* (* a (neg b)) a) (* a (neg b)) (* (* (* (neg b) a) b) a) (* (* (neg b) a) b) (sqrt (* a b)))
3.0ms
b
@-inf
((* (sqrt (* a b)) (sqrt (* a b))) (* (* (neg b) a) (* (sqrt (* a b)) (sqrt (* a b)))) (* (neg b) a) (neg b) (* (* (* a b) a) b) (* (* a b) a) (* a b) (* (* (* b b) a) a) (* (* b b) a) (* b b) (* (* (* a (neg b)) a) b) (* (* a (neg b)) a) (* a (neg b)) (* (* (* (neg b) a) b) a) (* (* (neg b) a) b) (sqrt (* a b)))
2.0ms
b
@inf
((* (sqrt (* a b)) (sqrt (* a b))) (* (* (neg b) a) (* (sqrt (* a b)) (sqrt (* a b)))) (* (neg b) a) (neg b) (* (* (* a b) a) b) (* (* a b) a) (* a b) (* (* (* b b) a) a) (* (* b b) a) (* b b) (* (* (* a (neg b)) a) b) (* (* a (neg b)) a) (* a (neg b)) (* (* (* (neg b) a) b) a) (* (* (neg b) a) b) (sqrt (* a b)))
2.0ms
a
@0
((* (sqrt (* a b)) (sqrt (* a b))) (* (* (neg b) a) (* (sqrt (* a b)) (sqrt (* a b)))) (* (neg b) a) (neg b) (* (* (* a b) a) b) (* (* a b) a) (* a b) (* (* (* b b) a) a) (* (* b b) a) (* b b) (* (* (* a (neg b)) a) b) (* (* a (neg b)) a) (* a (neg b)) (* (* (* (neg b) a) b) a) (* (* (neg b) a) b) (sqrt (* a b)))
2.0ms
a
@inf
((* (sqrt (* a b)) (sqrt (* a b))) (* (* (neg b) a) (* (sqrt (* a b)) (sqrt (* a b)))) (* (neg b) a) (neg b) (* (* (* a b) a) b) (* (* a b) a) (* a b) (* (* (* b b) a) a) (* (* b b) a) (* b b) (* (* (* a (neg b)) a) b) (* (* a (neg b)) a) (* a (neg b)) (* (* (* (neg b) a) b) a) (* (* (neg b) a) b) (sqrt (* a b)))

simplify22.0ms (1%)

Memory
22.5MiB live, 22.5MiB allocated; 0ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02568
16468
219368
064068
Stop Event
iter limit
iter limit
iter limit
unsound
Counts
14 → 14
Calls
Call 1
Inputs
(* a b)
(* -1 (* (pow a 2) (pow b 2)))
(* -1 (* a b))
(* (pow a 2) (pow b 2))
(* (pow a 2) b)
(* a (pow b 2))
(* -1 (* (pow a 2) b))
(* -1 (* a (pow b 2)))
(sqrt (* a b))
(* -1 (* a (* b (pow (sqrt -1) 2))))
(* (pow a 2) (* (pow b 2) (pow (sqrt -1) 2)))
(* -1 (* (sqrt (* a b)) (pow (sqrt -1) 2)))
(* -1 b)
(pow b 2)
Outputs
(* a b)
(*.f64 b a)
(* -1 (* (pow a 2) (pow b 2)))
(*.f64 (*.f64 (*.f64 (neg.f64 b) b) a) a)
(* -1 (* a b))
(*.f64 (neg.f64 a) b)
(* (pow a 2) (pow b 2))
(*.f64 (*.f64 (*.f64 b b) a) a)
(* (pow a 2) b)
(*.f64 (*.f64 a a) b)
(* a (pow b 2))
(*.f64 (*.f64 b b) a)
(* -1 (* (pow a 2) b))
(*.f64 (*.f64 (neg.f64 a) a) b)
(* -1 (* a (pow b 2)))
(*.f64 (*.f64 (neg.f64 b) b) a)
(sqrt (* a b))
(sqrt.f64 (*.f64 b a))
(* -1 (* a (* b (pow (sqrt -1) 2))))
(*.f64 b a)
(* (pow a 2) (* (pow b 2) (pow (sqrt -1) 2)))
(*.f64 (*.f64 (*.f64 (neg.f64 b) b) a) a)
(* -1 (* (sqrt (* a b)) (pow (sqrt -1) 2)))
(sqrt.f64 (*.f64 b a))
(* -1 b)
(neg.f64 b)
(pow b 2)
(*.f64 b b)

rewrite32.0ms (1.4%)

Memory
-23.9MiB live, 21.3MiB allocated; 6ms collecting garbage
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01895
03483
17973
025173
Stop Event
iter limit
iter limit
iter limit
unsound
iter limit
Counts
16 → 197
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 (*.f64 a b)))
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 (*.f64 a b))))
(*.f64 (neg.f64 b) a)
(neg.f64 b)
(*.f64 (*.f64 (*.f64 a b) a) b)
(*.f64 (*.f64 a b) a)
(*.f64 a b)
(*.f64 (*.f64 (*.f64 b b) a) a)
(*.f64 (*.f64 b b) a)
(*.f64 b b)
(*.f64 (*.f64 (*.f64 a (neg.f64 b)) a) b)
(*.f64 (*.f64 a (neg.f64 b)) a)
(*.f64 a (neg.f64 b))
(*.f64 (*.f64 (*.f64 (neg.f64 b) a) b) a)
(*.f64 (*.f64 (neg.f64 b) a) b)
(sqrt.f64 (*.f64 a b))
Outputs
(*.f64 (*.f64 (sqrt.f64 (*.f64 b a)) (sqrt.f64 a)) (sqrt.f64 b))
(*.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 a)) (*.f64 (sqrt.f64 b) (sqrt.f64 b)))
(*.f64 (neg.f64 (neg.f64 (sqrt.f64 (*.f64 b a)))) (neg.f64 (neg.f64 (sqrt.f64 (*.f64 b a)))))
(*.f64 (sqrt.f64 (*.f64 (*.f64 b a) a)) (sqrt.f64 b))
(*.f64 (pow.f64 (sqrt.f64 a) #s(literal 2 binary64)) (pow.f64 (sqrt.f64 b) #s(literal 2 binary64)))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 b a))) (neg.f64 (sqrt.f64 (*.f64 b a))))
(*.f64 (sqrt.f64 b) (sqrt.f64 (*.f64 (*.f64 b a) a)))
(*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 b) (sqrt.f64 (*.f64 b a))))
(*.f64 (sqrt.f64 (*.f64 b a)) (sqrt.f64 (*.f64 b a)))
(*.f64 b a)
(*.f64 a b)
(pow.f64 (neg.f64 (sqrt.f64 (*.f64 b a))) #s(literal 2 binary64))
(pow.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (sqrt.f64 (*.f64 b a)) #s(literal 2 binary64))
(pow.f64 (*.f64 b a) #s(literal 1 binary64))
(neg.f64 (*.f64 (neg.f64 b) a))
(sqrt.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)))
(fabs.f64 (*.f64 b a))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 b a))) #s(literal 2 binary64)))
(*.f64 (*.f64 (*.f64 (*.f64 (neg.f64 b) a) (sqrt.f64 (*.f64 b a))) (sqrt.f64 a)) (sqrt.f64 b))
(*.f64 (*.f64 (*.f64 (neg.f64 b) a) (neg.f64 (sqrt.f64 (*.f64 b a)))) (neg.f64 (sqrt.f64 (*.f64 b a))))
(*.f64 (*.f64 (*.f64 (neg.f64 b) a) (sqrt.f64 (*.f64 b a))) (sqrt.f64 (*.f64 b a)))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 b a))) (*.f64 (neg.f64 (sqrt.f64 (*.f64 b a))) (*.f64 (neg.f64 b) a)))
(*.f64 (*.f64 (*.f64 (neg.f64 b) a) b) a)
(*.f64 (*.f64 (*.f64 (neg.f64 b) a) a) b)
(*.f64 (*.f64 (*.f64 b a) a) (neg.f64 b))
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 b a))
(*.f64 (neg.f64 b) (*.f64 (*.f64 b a) a))
(*.f64 (sqrt.f64 (*.f64 b a)) (*.f64 (*.f64 (neg.f64 b) a) (sqrt.f64 (*.f64 b a))))
(*.f64 (*.f64 b a) (*.f64 (neg.f64 b) a))
(*.f64 b (*.f64 (*.f64 (neg.f64 b) a) a))
(*.f64 a (*.f64 (*.f64 (neg.f64 b) a) b))
(neg.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)))
(*.f64 (neg.f64 (neg.f64 (sqrt.f64 (*.f64 b a)))) (neg.f64 (sqrt.f64 (*.f64 b a))))
(*.f64 (neg.f64 a) b)
(*.f64 (neg.f64 (sqrt.f64 (*.f64 b a))) (neg.f64 (neg.f64 (sqrt.f64 (*.f64 b a)))))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 b a))) (sqrt.f64 (*.f64 b a)))
(*.f64 (neg.f64 b) a)
(*.f64 (sqrt.f64 (*.f64 b a)) (neg.f64 (sqrt.f64 (*.f64 b a))))
(*.f64 b (neg.f64 a))
(*.f64 a (neg.f64 b))
(neg.f64 (*.f64 b a))
(neg.f64 b)
(*.f64 (*.f64 (*.f64 b a) (neg.f64 (sqrt.f64 (*.f64 b a)))) (neg.f64 (sqrt.f64 (*.f64 b a))))
(*.f64 (*.f64 (*.f64 b a) (sqrt.f64 (*.f64 b a))) (sqrt.f64 (*.f64 b a)))
(*.f64 (*.f64 (fabs.f64 b) a) (*.f64 (fabs.f64 b) a))
(*.f64 (*.f64 a a) (*.f64 b b))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 b a))) (*.f64 (neg.f64 (sqrt.f64 (*.f64 b a))) (*.f64 b a)))
(*.f64 (fabs.f64 b) (*.f64 (fabs.f64 b) (*.f64 a a)))
(*.f64 (*.f64 (*.f64 b b) a) a)
(*.f64 (*.f64 b b) (*.f64 a a))
(*.f64 (*.f64 (*.f64 b a) a) b)
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (neg.f64 b) a))
(*.f64 (neg.f64 b) (*.f64 (*.f64 (neg.f64 b) a) a))
(*.f64 (sqrt.f64 (*.f64 b a)) (*.f64 (sqrt.f64 (*.f64 b a)) (*.f64 b a)))
(*.f64 (*.f64 b a) (*.f64 b a))
(*.f64 b (*.f64 (*.f64 b a) a))
(*.f64 a (*.f64 (*.f64 b b) a))
(pow.f64 (sqrt.f64 (*.f64 b a)) #s(literal 4 binary64))
(pow.f64 (*.f64 b a) #s(literal 2 binary64))
(sqrt.f64 (*.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)) (pow.f64 (*.f64 b a) #s(literal 2 binary64))))
(*.f64 (*.f64 a (neg.f64 (sqrt.f64 (*.f64 b a)))) (neg.f64 (sqrt.f64 (*.f64 b a))))
(*.f64 (*.f64 a (sqrt.f64 (*.f64 b a))) (sqrt.f64 (*.f64 b a)))
(*.f64 (*.f64 a a) b)
(*.f64 (neg.f64 (sqrt.f64 (*.f64 b a))) (*.f64 (neg.f64 (sqrt.f64 (*.f64 b a))) a))
(*.f64 (sqrt.f64 (*.f64 b a)) (*.f64 (sqrt.f64 (*.f64 b a)) a))
(*.f64 (*.f64 b a) a)
(*.f64 b (*.f64 a a))
(*.f64 a (*.f64 b a))
(*.f64 (*.f64 (sqrt.f64 (*.f64 b a)) (sqrt.f64 a)) (sqrt.f64 b))
(*.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 a)) (*.f64 (sqrt.f64 b) (sqrt.f64 b)))
(*.f64 (neg.f64 (neg.f64 (sqrt.f64 (*.f64 b a)))) (neg.f64 (neg.f64 (sqrt.f64 (*.f64 b a)))))
(*.f64 (sqrt.f64 (*.f64 (*.f64 b a) a)) (sqrt.f64 b))
(*.f64 (pow.f64 (sqrt.f64 a) #s(literal 2 binary64)) (pow.f64 (sqrt.f64 b) #s(literal 2 binary64)))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 b a))) (neg.f64 (sqrt.f64 (*.f64 b a))))
(*.f64 (sqrt.f64 b) (sqrt.f64 (*.f64 (*.f64 b a) a)))
(*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 b) (sqrt.f64 (*.f64 b a))))
(*.f64 (sqrt.f64 (*.f64 b a)) (sqrt.f64 (*.f64 b a)))
(*.f64 b a)
(*.f64 a b)
(pow.f64 (neg.f64 (sqrt.f64 (*.f64 b a))) #s(literal 2 binary64))
(pow.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (sqrt.f64 (*.f64 b a)) #s(literal 2 binary64))
(pow.f64 (*.f64 b a) #s(literal 1 binary64))
(neg.f64 (*.f64 (neg.f64 b) a))
(sqrt.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)))
(fabs.f64 (*.f64 b a))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 b a))) #s(literal 2 binary64)))
(*.f64 (*.f64 (*.f64 b a) (neg.f64 (sqrt.f64 (*.f64 b a)))) (neg.f64 (sqrt.f64 (*.f64 b a))))
(*.f64 (*.f64 (*.f64 b a) (sqrt.f64 (*.f64 b a))) (sqrt.f64 (*.f64 b a)))
(*.f64 (*.f64 (fabs.f64 b) a) (*.f64 (fabs.f64 b) a))
(*.f64 (*.f64 a a) (*.f64 b b))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 b a))) (*.f64 (neg.f64 (sqrt.f64 (*.f64 b a))) (*.f64 b a)))
(*.f64 (fabs.f64 b) (*.f64 (fabs.f64 b) (*.f64 a a)))
(*.f64 (*.f64 (*.f64 b b) a) a)
(*.f64 (*.f64 b b) (*.f64 a a))
(*.f64 (*.f64 (*.f64 b a) a) b)
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (neg.f64 b) a))
(*.f64 (neg.f64 b) (*.f64 (*.f64 (neg.f64 b) a) a))
(*.f64 (sqrt.f64 (*.f64 b a)) (*.f64 (sqrt.f64 (*.f64 b a)) (*.f64 b a)))
(*.f64 (*.f64 b a) (*.f64 b a))
(*.f64 b (*.f64 (*.f64 b a) a))
(*.f64 a (*.f64 (*.f64 b b) a))
(pow.f64 (sqrt.f64 (*.f64 b a)) #s(literal 4 binary64))
(pow.f64 (*.f64 b a) #s(literal 2 binary64))
(sqrt.f64 (*.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)) (pow.f64 (*.f64 b a) #s(literal 2 binary64))))
(*.f64 (*.f64 b (neg.f64 (sqrt.f64 (*.f64 b a)))) (neg.f64 (sqrt.f64 (*.f64 b a))))
(*.f64 (*.f64 b (sqrt.f64 (*.f64 b a))) (sqrt.f64 (*.f64 b a)))
(*.f64 (*.f64 a (fabs.f64 b)) (fabs.f64 b))
(*.f64 (fabs.f64 b) (*.f64 (fabs.f64 b) a))
(*.f64 (*.f64 b b) a)
(*.f64 (*.f64 (neg.f64 b) a) (neg.f64 b))
(*.f64 (neg.f64 b) (*.f64 (neg.f64 b) a))
(*.f64 (*.f64 b a) b)
(*.f64 b (*.f64 b a))
(*.f64 a (*.f64 b b))
(*.f64 (pow.f64 b #s(literal 1 binary64)) (pow.f64 b #s(literal 1 binary64)))
(*.f64 (neg.f64 (fabs.f64 b)) (neg.f64 (fabs.f64 b)))
(*.f64 (neg.f64 (neg.f64 b)) (neg.f64 (neg.f64 b)))
(*.f64 (fabs.f64 (fabs.f64 b)) (fabs.f64 (fabs.f64 b)))
(*.f64 (fabs.f64 b) (fabs.f64 b))
(*.f64 (neg.f64 b) (neg.f64 b))
(*.f64 b b)
(pow.f64 (fabs.f64 b) #s(literal 2 binary64))
(pow.f64 (neg.f64 b) #s(literal 2 binary64))
(pow.f64 b #s(literal 2 binary64))
(neg.f64 (*.f64 (neg.f64 b) b))
(neg.f64 (*.f64 b (neg.f64 b)))
(fabs.f64 (*.f64 b b))
(exp.f64 (*.f64 (log.f64 b) #s(literal 2 binary64)))
(*.f64 (*.f64 (*.f64 (*.f64 (neg.f64 b) a) (sqrt.f64 (*.f64 b a))) (sqrt.f64 a)) (sqrt.f64 b))
(*.f64 (*.f64 (*.f64 (neg.f64 b) a) (neg.f64 (sqrt.f64 (*.f64 b a)))) (neg.f64 (sqrt.f64 (*.f64 b a))))
(*.f64 (*.f64 (*.f64 (neg.f64 b) a) (sqrt.f64 (*.f64 b a))) (sqrt.f64 (*.f64 b a)))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 b a))) (*.f64 (neg.f64 (sqrt.f64 (*.f64 b a))) (*.f64 (neg.f64 b) a)))
(*.f64 (*.f64 (*.f64 (neg.f64 b) a) b) a)
(*.f64 (*.f64 (*.f64 (neg.f64 b) a) a) b)
(*.f64 (*.f64 (*.f64 b a) a) (neg.f64 b))
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 b a))
(*.f64 (neg.f64 b) (*.f64 (*.f64 b a) a))
(*.f64 (sqrt.f64 (*.f64 b a)) (*.f64 (*.f64 (neg.f64 b) a) (sqrt.f64 (*.f64 b a))))
(*.f64 (*.f64 b a) (*.f64 (neg.f64 b) a))
(*.f64 b (*.f64 (*.f64 (neg.f64 b) a) a))
(*.f64 a (*.f64 (*.f64 (neg.f64 b) a) b))
(neg.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)))
(*.f64 (*.f64 a a) (neg.f64 b))
(*.f64 (*.f64 (neg.f64 b) a) a)
(*.f64 (neg.f64 b) (*.f64 a a))
(*.f64 a (*.f64 (neg.f64 b) a))
(neg.f64 (*.f64 (*.f64 b a) a))
(*.f64 (neg.f64 (neg.f64 (sqrt.f64 (*.f64 b a)))) (neg.f64 (sqrt.f64 (*.f64 b a))))
(*.f64 (neg.f64 a) b)
(*.f64 (neg.f64 (sqrt.f64 (*.f64 b a))) (neg.f64 (neg.f64 (sqrt.f64 (*.f64 b a)))))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 b a))) (sqrt.f64 (*.f64 b a)))
(*.f64 (neg.f64 b) a)
(*.f64 (sqrt.f64 (*.f64 b a)) (neg.f64 (sqrt.f64 (*.f64 b a))))
(*.f64 b (neg.f64 a))
(*.f64 a (neg.f64 b))
(neg.f64 (*.f64 b a))
(*.f64 (*.f64 (*.f64 (*.f64 (neg.f64 b) a) (sqrt.f64 (*.f64 b a))) (sqrt.f64 a)) (sqrt.f64 b))
(*.f64 (*.f64 (*.f64 (neg.f64 b) a) (neg.f64 (sqrt.f64 (*.f64 b a)))) (neg.f64 (sqrt.f64 (*.f64 b a))))
(*.f64 (*.f64 (*.f64 (neg.f64 b) a) (sqrt.f64 (*.f64 b a))) (sqrt.f64 (*.f64 b a)))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 b a))) (*.f64 (neg.f64 (sqrt.f64 (*.f64 b a))) (*.f64 (neg.f64 b) a)))
(*.f64 (*.f64 (*.f64 (neg.f64 b) a) b) a)
(*.f64 (*.f64 (*.f64 (neg.f64 b) a) a) b)
(*.f64 (*.f64 (*.f64 b a) a) (neg.f64 b))
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 b a))
(*.f64 (neg.f64 b) (*.f64 (*.f64 b a) a))
(*.f64 (sqrt.f64 (*.f64 b a)) (*.f64 (*.f64 (neg.f64 b) a) (sqrt.f64 (*.f64 b a))))
(*.f64 (*.f64 b a) (*.f64 (neg.f64 b) a))
(*.f64 b (*.f64 (*.f64 (neg.f64 b) a) a))
(*.f64 a (*.f64 (*.f64 (neg.f64 b) a) b))
(neg.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)))
(*.f64 (*.f64 (neg.f64 b) (neg.f64 (sqrt.f64 (*.f64 b a)))) (neg.f64 (sqrt.f64 (*.f64 b a))))
(*.f64 (*.f64 (neg.f64 b) (sqrt.f64 (*.f64 b a))) (sqrt.f64 (*.f64 b a)))
(*.f64 (*.f64 (neg.f64 b) b) a)
(*.f64 (*.f64 b (neg.f64 b)) a)
(*.f64 (*.f64 (neg.f64 b) a) b)
(*.f64 (neg.f64 b) (*.f64 b a))
(*.f64 (*.f64 b a) (neg.f64 b))
(*.f64 b (*.f64 (neg.f64 b) a))
(*.f64 a (*.f64 (neg.f64 b) b))
(neg.f64 (*.f64 (*.f64 b b) a))
(*.f64 (pow.f64 (*.f64 b a) #s(literal 1/4 binary64)) (pow.f64 (*.f64 b a) #s(literal 1/4 binary64)))
(*.f64 (fabs.f64 (sqrt.f64 a)) (fabs.f64 (sqrt.f64 b)))
(*.f64 (sqrt.f64 (neg.f64 (sqrt.f64 (*.f64 b a)))) (sqrt.f64 (neg.f64 (sqrt.f64 (*.f64 b a)))))
(*.f64 (sqrt.f64 (sqrt.f64 (*.f64 b a))) (sqrt.f64 (sqrt.f64 (*.f64 b a))))
(*.f64 (pow.f64 (neg.f64 (sqrt.f64 (*.f64 b a))) #s(literal 1/2 binary64)) (pow.f64 (neg.f64 (sqrt.f64 (*.f64 b a))) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (sqrt.f64 (*.f64 b a)) #s(literal 1/2 binary64)) (pow.f64 (sqrt.f64 (*.f64 b a)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 b) (sqrt.f64 a))
(*.f64 (sqrt.f64 a) (sqrt.f64 b))
(pow.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)) #s(literal 1/4 binary64))
(pow.f64 (sqrt.f64 (*.f64 b a)) #s(literal 1 binary64))
(pow.f64 (*.f64 b a) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 b a))
(fabs.f64 (neg.f64 (sqrt.f64 (*.f64 b a))))
(fabs.f64 (sqrt.f64 (*.f64 b a)))
(exp.f64 (*.f64 (log.f64 (*.f64 b a)) #s(literal 1/2 binary64)))

eval15.0ms (0.7%)

Memory
25.4MiB live, 25.4MiB allocated; 0ms collecting garbage
Compiler

Compiled 2 042 to 392 computations (80.8% saved)

prune35.0ms (1.6%)

Memory
-17.4MiB live, 34.9MiB allocated; 11ms collecting garbage
Pruning

15 alts after pruning (6 fresh and 9 done)

PrunedKeptTotal
New1595164
Fresh011
Picked145
Done055
Total16015175
Accuracy
100.0%
Counts
175 → 15
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.5%
(*.f64 (*.f64 (*.f64 (neg.f64 b) a) (sqrt.f64 (*.f64 b a))) (sqrt.f64 (*.f64 b a)))
92.5%
(*.f64 (*.f64 (*.f64 (neg.f64 b) a) b) a)
25.1%
(*.f64 (*.f64 (*.f64 b b) a) a)
95.3%
(*.f64 (*.f64 (*.f64 a (neg.f64 b)) a) b)
25.3%
(*.f64 (*.f64 (*.f64 a b) a) b)
99.5%
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 b a))) (sqrt.f64 (sqrt.f64 (*.f64 b a)))) (sqrt.f64 (*.f64 a b))))
95.2%
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (sqrt.f64 (*.f64 (*.f64 b a) a)) (sqrt.f64 b)))
83.0%
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (sqrt.f64 (*.f64 (*.f64 a a) b)) (sqrt.f64 b)))
97.3%
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (sqrt.f64 (*.f64 a b)) (exp.f64 (*.f64 (log.f64 (*.f64 b a)) #s(literal 1/2 binary64)))))
99.6%
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 b) (sqrt.f64 (*.f64 b a)))))
99.7%
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 b a))
25.5%
(*.f64 (*.f64 b (*.f64 a a)) b)
25.2%
(*.f64 (*.f64 b b) (*.f64 a a))
25.3%
(*.f64 (*.f64 b a) (*.f64 b a))
83.0%
(neg.f64 (*.f64 (*.f64 (*.f64 a a) b) b))
Compiler

Compiled 257 to 176 computations (31.5% saved)

simplify138.0ms (6.2%)

Memory
-4.5MiB live, 83.6MiB allocated; 10ms collecting garbage
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 (neg.f64 b) a)
cost-diff1
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 b a))) (sqrt.f64 (sqrt.f64 (*.f64 b a)))) (sqrt.f64 (*.f64 a b))))
cost-diff6
(*.f64 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 b a))) (sqrt.f64 (sqrt.f64 (*.f64 b a)))) (sqrt.f64 (*.f64 a b)))
cost-diff7
(*.f64 (sqrt.f64 (sqrt.f64 (*.f64 b a))) (sqrt.f64 (sqrt.f64 (*.f64 b a))))
cost-diff0
(neg.f64 b)
cost-diff0
(*.f64 (neg.f64 b) a)
cost-diff2
(*.f64 (*.f64 (neg.f64 b) a) (sqrt.f64 (*.f64 b a)))
cost-diff5
(*.f64 (*.f64 (*.f64 (neg.f64 b) a) (sqrt.f64 (*.f64 b a))) (sqrt.f64 (*.f64 b a)))
cost-diff0
(*.f64 (sqrt.f64 (*.f64 (*.f64 b a) a)) (sqrt.f64 b))
cost-diff0
(neg.f64 b)
cost-diff0
(*.f64 (neg.f64 b) a)
cost-diff0
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (sqrt.f64 (*.f64 (*.f64 b a) a)) (sqrt.f64 b)))
cost-diff0
(*.f64 (sqrt.f64 (*.f64 (*.f64 a a) b)) (sqrt.f64 b))
cost-diff0
(neg.f64 b)
cost-diff0
(*.f64 (neg.f64 b) a)
cost-diff0
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (sqrt.f64 (*.f64 (*.f64 a a) b)) (sqrt.f64 b)))
cost-diff0
(*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 b) (sqrt.f64 (*.f64 b a))))
cost-diff0
(neg.f64 b)
cost-diff0
(*.f64 (neg.f64 b) a)
cost-diff2
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 b) (sqrt.f64 (*.f64 b a)))))
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
028258
054231
1105219
2294215
31350213
42905213
52968213
63067213
73286213
83924213
97264213
08211213
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 b) (sqrt.f64 (*.f64 b a)))))
(*.f64 (neg.f64 b) a)
(neg.f64 b)
b
a
(*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 b) (sqrt.f64 (*.f64 b a))))
(sqrt.f64 a)
(*.f64 (sqrt.f64 b) (sqrt.f64 (*.f64 b a)))
(sqrt.f64 b)
(sqrt.f64 (*.f64 b a))
(*.f64 b a)
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (sqrt.f64 (*.f64 (*.f64 a a) b)) (sqrt.f64 b)))
(*.f64 (neg.f64 b) a)
(neg.f64 b)
b
a
(*.f64 (sqrt.f64 (*.f64 (*.f64 a a) b)) (sqrt.f64 b))
(sqrt.f64 (*.f64 (*.f64 a a) b))
(*.f64 (*.f64 a a) b)
(*.f64 a a)
(sqrt.f64 b)
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (sqrt.f64 (*.f64 (*.f64 b a) a)) (sqrt.f64 b)))
(*.f64 (neg.f64 b) a)
(neg.f64 b)
b
a
(*.f64 (sqrt.f64 (*.f64 (*.f64 b a) a)) (sqrt.f64 b))
(sqrt.f64 (*.f64 (*.f64 b a) a))
(*.f64 (*.f64 b a) a)
(*.f64 b a)
(sqrt.f64 b)
(*.f64 (*.f64 (*.f64 (neg.f64 b) a) (sqrt.f64 (*.f64 b a))) (sqrt.f64 (*.f64 b a)))
(*.f64 (*.f64 (neg.f64 b) a) (sqrt.f64 (*.f64 b a)))
(*.f64 (neg.f64 b) a)
(neg.f64 b)
b
a
(sqrt.f64 (*.f64 b a))
(*.f64 b a)
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 b a))) (sqrt.f64 (sqrt.f64 (*.f64 b a)))) (sqrt.f64 (*.f64 a b))))
(*.f64 (neg.f64 b) a)
(neg.f64 b)
b
a
(*.f64 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 b a))) (sqrt.f64 (sqrt.f64 (*.f64 b a)))) (sqrt.f64 (*.f64 a b)))
(*.f64 (sqrt.f64 (sqrt.f64 (*.f64 b a))) (sqrt.f64 (sqrt.f64 (*.f64 b a))))
(sqrt.f64 (sqrt.f64 (*.f64 b a)))
(sqrt.f64 (*.f64 b a))
(*.f64 b a)
(sqrt.f64 (*.f64 a b))
(*.f64 a b)
Outputs
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 b) (sqrt.f64 (*.f64 b a)))))
(*.f64 (neg.f64 (*.f64 (sqrt.f64 b) (sqrt.f64 a))) (pow.f64 (sqrt.f64 (*.f64 a b)) #s(literal 3 binary64)))
(*.f64 (neg.f64 b) a)
(*.f64 a (neg.f64 b))
(neg.f64 b)
b
a
(*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 b) (sqrt.f64 (*.f64 b a))))
(*.f64 (*.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 b)) (sqrt.f64 a))
(sqrt.f64 a)
(*.f64 (sqrt.f64 b) (sqrt.f64 (*.f64 b a)))
(*.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 b))
(sqrt.f64 b)
(sqrt.f64 (*.f64 b a))
(sqrt.f64 (*.f64 a b))
(*.f64 b a)
(*.f64 a b)
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (sqrt.f64 (*.f64 (*.f64 a a) b)) (sqrt.f64 b)))
(*.f64 (*.f64 (sqrt.f64 (*.f64 (*.f64 a a) b)) (sqrt.f64 b)) (*.f64 a (neg.f64 b)))
(*.f64 (neg.f64 b) a)
(*.f64 a (neg.f64 b))
(neg.f64 b)
b
a
(*.f64 (sqrt.f64 (*.f64 (*.f64 a a) b)) (sqrt.f64 b))
(sqrt.f64 (*.f64 (*.f64 a a) b))
(*.f64 (*.f64 a a) b)
(*.f64 a a)
(sqrt.f64 b)
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (sqrt.f64 (*.f64 (*.f64 b a) a)) (sqrt.f64 b)))
(*.f64 (*.f64 (sqrt.f64 (*.f64 (*.f64 a a) b)) (sqrt.f64 b)) (*.f64 a (neg.f64 b)))
(*.f64 (neg.f64 b) a)
(*.f64 a (neg.f64 b))
(neg.f64 b)
b
a
(*.f64 (sqrt.f64 (*.f64 (*.f64 b a) a)) (sqrt.f64 b))
(*.f64 (sqrt.f64 (*.f64 (*.f64 a a) b)) (sqrt.f64 b))
(sqrt.f64 (*.f64 (*.f64 b a) a))
(sqrt.f64 (*.f64 (*.f64 a a) b))
(*.f64 (*.f64 b a) a)
(*.f64 (*.f64 a a) b)
(*.f64 b a)
(*.f64 a b)
(sqrt.f64 b)
(*.f64 (*.f64 (*.f64 (neg.f64 b) a) (sqrt.f64 (*.f64 b a))) (sqrt.f64 (*.f64 b a)))
(neg.f64 (pow.f64 (sqrt.f64 (*.f64 a b)) #s(literal 4 binary64)))
(*.f64 (*.f64 (neg.f64 b) a) (sqrt.f64 (*.f64 b a)))
(pow.f64 (neg.f64 (sqrt.f64 (*.f64 a b))) #s(literal 3 binary64))
(*.f64 (neg.f64 b) a)
(*.f64 a (neg.f64 b))
(neg.f64 b)
b
a
(sqrt.f64 (*.f64 b a))
(sqrt.f64 (*.f64 a b))
(*.f64 b a)
(*.f64 a b)
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 b a))) (sqrt.f64 (sqrt.f64 (*.f64 b a)))) (sqrt.f64 (*.f64 a b))))
(neg.f64 (pow.f64 (sqrt.f64 (*.f64 a b)) #s(literal 4 binary64)))
(*.f64 (neg.f64 b) a)
(*.f64 a (neg.f64 b))
(neg.f64 b)
b
a
(*.f64 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 b a))) (sqrt.f64 (sqrt.f64 (*.f64 b a)))) (sqrt.f64 (*.f64 a b)))
(*.f64 a b)
(*.f64 (sqrt.f64 (sqrt.f64 (*.f64 b a))) (sqrt.f64 (sqrt.f64 (*.f64 b a))))
(sqrt.f64 (*.f64 a b))
(sqrt.f64 (sqrt.f64 (*.f64 b a)))
(sqrt.f64 (sqrt.f64 (*.f64 a b)))
(sqrt.f64 (*.f64 b a))
(sqrt.f64 (*.f64 a b))
(*.f64 b a)
(*.f64 a b)
(sqrt.f64 (*.f64 a b))
(*.f64 a b)

localize96.0ms (4.3%)

Memory
4.7MiB live, 103.2MiB allocated; 14ms collecting garbage
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.39585878907376815
(*.f64 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 b a))) (sqrt.f64 (sqrt.f64 (*.f64 b a)))) (sqrt.f64 (*.f64 a b)))
accuracy0.53125
(*.f64 (sqrt.f64 (sqrt.f64 (*.f64 b a))) (sqrt.f64 (sqrt.f64 (*.f64 b a))))
accuracy16.078244126494077
(sqrt.f64 (*.f64 b a))
accuracy16.078244126494077
(sqrt.f64 (*.f64 a b))
accuracy0.0
(neg.f64 b)
accuracy0.14453125
(*.f64 (*.f64 (*.f64 (neg.f64 b) a) (sqrt.f64 (*.f64 b a))) (sqrt.f64 (*.f64 b a)))
accuracy0.19140625
(*.f64 (*.f64 (neg.f64 b) a) (sqrt.f64 (*.f64 b a)))
accuracy16.078244126494077
(sqrt.f64 (*.f64 b a))
accuracy0.140625
(*.f64 (*.f64 b a) a)
accuracy0.20378876953688402
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (sqrt.f64 (*.f64 (*.f64 b a) a)) (sqrt.f64 b)))
accuracy0.25
(*.f64 (sqrt.f64 (*.f64 (*.f64 b a) a)) (sqrt.f64 b))
accuracy20.19685200145911
(sqrt.f64 (*.f64 (*.f64 b a) a))
accuracy0.20378876953688402
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (sqrt.f64 (*.f64 (*.f64 a a) b)) (sqrt.f64 b)))
accuracy0.25
(*.f64 (sqrt.f64 (*.f64 (*.f64 a a) b)) (sqrt.f64 b))
accuracy7.774597153528254
(*.f64 (*.f64 a a) b)
accuracy20.19685200145911
(sqrt.f64 (*.f64 (*.f64 a a) b))
accuracy0.20378876953688402
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 b) (sqrt.f64 (*.f64 b a)))))
accuracy0.25390625
(*.f64 (sqrt.f64 b) (sqrt.f64 (*.f64 b a)))
accuracy0.26171875
(*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 b) (sqrt.f64 (*.f64 b a))))
accuracy16.078244126494077
(sqrt.f64 (*.f64 b a))
Samples
65.0ms256×0valid
Compiler

Compiled 260 to 30 computations (88.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 45.0ms
ival-mult: 33.0ms (73.6% of total)
ival-sqrt: 10.0ms (22.3% of total)
ival-neg: 1.0ms (2.2% of total)
ival-true: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series32.0ms (1.4%)

Memory
-15.1MiB live, 30.7MiB allocated; 4ms collecting garbage
Counts
20 → 17
Calls
Call 1
Inputs
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 b) (sqrt.f64 (*.f64 b a)))))
(*.f64 (neg.f64 b) a)
(neg.f64 b)
(*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 b) (sqrt.f64 (*.f64 b a))))
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (sqrt.f64 (*.f64 (*.f64 a a) b)) (sqrt.f64 b)))
(*.f64 (sqrt.f64 (*.f64 (*.f64 a a) b)) (sqrt.f64 b))
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (sqrt.f64 (*.f64 (*.f64 b a) a)) (sqrt.f64 b)))
(*.f64 (sqrt.f64 (*.f64 (*.f64 b a) a)) (sqrt.f64 b))
(*.f64 (*.f64 (*.f64 (neg.f64 b) a) (sqrt.f64 (*.f64 b a))) (sqrt.f64 (*.f64 b a)))
(*.f64 (*.f64 (neg.f64 b) a) (sqrt.f64 (*.f64 b a)))
(*.f64 (sqrt.f64 (sqrt.f64 (*.f64 b a))) (sqrt.f64 (sqrt.f64 (*.f64 b a))))
(*.f64 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 b a))) (sqrt.f64 (sqrt.f64 (*.f64 b a)))) (sqrt.f64 (*.f64 a b)))
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 b a))) (sqrt.f64 (sqrt.f64 (*.f64 b a)))) (sqrt.f64 (*.f64 a b))))
(sqrt.f64 (*.f64 b a))
(*.f64 (sqrt.f64 b) (sqrt.f64 (*.f64 b a)))
(sqrt.f64 (*.f64 (*.f64 a a) b))
(*.f64 (*.f64 a a) b)
(sqrt.f64 (*.f64 (*.f64 b a) a))
(*.f64 (*.f64 b a) a)
(sqrt.f64 (*.f64 a b))
Outputs
(* -1 (* (pow a 2) (pow b 2)))
(* -1 (* a b))
(* a b)
(* -1 (sqrt (* (pow a 3) (pow b 3))))
(sqrt (* a b))
(* (sqrt a) b)
(* a (sqrt b))
(* (pow a 2) b)
(* (pow a 2) (* (pow b 2) (pow (sqrt -1) 2)))
(* -1 (* a (* b (pow (sqrt -1) 2))))
(* (pow a 2) (pow b 2))
(* (sqrt (* (pow a 3) (pow b 3))) (pow (sqrt -1) 2))
(* -1 (* (sqrt (* a b)) (pow (sqrt -1) 2)))
(* -1 (* (sqrt a) (* b (pow (sqrt -1) 2))))
(* -1 (* a (sqrt b)))
(* -1 b)
(* -1 (* (* a (pow (sqrt -1) 2)) (sqrt b)))
Calls

6 calls:

TimeVariablePointExpression
12.0ms
b
@inf
((* (* (neg b) a) (* (sqrt a) (* (sqrt b) (sqrt (* b a))))) (* (neg b) a) (neg b) (* (sqrt a) (* (sqrt b) (sqrt (* b a)))) (* (* (neg b) a) (* (sqrt (* (* a a) b)) (sqrt b))) (* (sqrt (* (* a a) b)) (sqrt b)) (* (* (neg b) a) (* (sqrt (* (* b a) a)) (sqrt b))) (* (sqrt (* (* b a) a)) (sqrt b)) (* (* (* (neg b) a) (sqrt (* b a))) (sqrt (* b a))) (* (* (neg b) a) (sqrt (* b a))) (* (sqrt (sqrt (* b a))) (sqrt (sqrt (* b a)))) (* (* (sqrt (sqrt (* b a))) (sqrt (sqrt (* b a)))) (sqrt (* a b))) (* (* (neg b) a) (* (* (sqrt (sqrt (* b a))) (sqrt (sqrt (* b a)))) (sqrt (* a b)))) (sqrt (* b a)) (* (sqrt b) (sqrt (* b a))) (sqrt (* (* a a) b)) (* (* a a) b) (sqrt (* (* b a) a)) (* (* b a) a) (sqrt (* a b)))
5.0ms
b
@-inf
((* (* (neg b) a) (* (sqrt a) (* (sqrt b) (sqrt (* b a))))) (* (neg b) a) (neg b) (* (sqrt a) (* (sqrt b) (sqrt (* b a)))) (* (* (neg b) a) (* (sqrt (* (* a a) b)) (sqrt b))) (* (sqrt (* (* a a) b)) (sqrt b)) (* (* (neg b) a) (* (sqrt (* (* b a) a)) (sqrt b))) (* (sqrt (* (* b a) a)) (sqrt b)) (* (* (* (neg b) a) (sqrt (* b a))) (sqrt (* b a))) (* (* (neg b) a) (sqrt (* b a))) (* (sqrt (sqrt (* b a))) (sqrt (sqrt (* b a)))) (* (* (sqrt (sqrt (* b a))) (sqrt (sqrt (* b a)))) (sqrt (* a b))) (* (* (neg b) a) (* (* (sqrt (sqrt (* b a))) (sqrt (sqrt (* b a)))) (sqrt (* a b)))) (sqrt (* b a)) (* (sqrt b) (sqrt (* b a))) (sqrt (* (* a a) b)) (* (* a a) b) (sqrt (* (* b a) a)) (* (* b a) a) (sqrt (* a b)))
4.0ms
a
@-inf
((* (* (neg b) a) (* (sqrt a) (* (sqrt b) (sqrt (* b a))))) (* (neg b) a) (neg b) (* (sqrt a) (* (sqrt b) (sqrt (* b a)))) (* (* (neg b) a) (* (sqrt (* (* a a) b)) (sqrt b))) (* (sqrt (* (* a a) b)) (sqrt b)) (* (* (neg b) a) (* (sqrt (* (* b a) a)) (sqrt b))) (* (sqrt (* (* b a) a)) (sqrt b)) (* (* (* (neg b) a) (sqrt (* b a))) (sqrt (* b a))) (* (* (neg b) a) (sqrt (* b a))) (* (sqrt (sqrt (* b a))) (sqrt (sqrt (* b a)))) (* (* (sqrt (sqrt (* b a))) (sqrt (sqrt (* b a)))) (sqrt (* a b))) (* (* (neg b) a) (* (* (sqrt (sqrt (* b a))) (sqrt (sqrt (* b a)))) (sqrt (* a b)))) (sqrt (* b a)) (* (sqrt b) (sqrt (* b a))) (sqrt (* (* a a) b)) (* (* a a) b) (sqrt (* (* b a) a)) (* (* b a) a) (sqrt (* a b)))
3.0ms
a
@0
((* (* (neg b) a) (* (sqrt a) (* (sqrt b) (sqrt (* b a))))) (* (neg b) a) (neg b) (* (sqrt a) (* (sqrt b) (sqrt (* b a)))) (* (* (neg b) a) (* (sqrt (* (* a a) b)) (sqrt b))) (* (sqrt (* (* a a) b)) (sqrt b)) (* (* (neg b) a) (* (sqrt (* (* b a) a)) (sqrt b))) (* (sqrt (* (* b a) a)) (sqrt b)) (* (* (* (neg b) a) (sqrt (* b a))) (sqrt (* b a))) (* (* (neg b) a) (sqrt (* b a))) (* (sqrt (sqrt (* b a))) (sqrt (sqrt (* b a)))) (* (* (sqrt (sqrt (* b a))) (sqrt (sqrt (* b a)))) (sqrt (* a b))) (* (* (neg b) a) (* (* (sqrt (sqrt (* b a))) (sqrt (sqrt (* b a)))) (sqrt (* a b)))) (sqrt (* b a)) (* (sqrt b) (sqrt (* b a))) (sqrt (* (* a a) b)) (* (* a a) b) (sqrt (* (* b a) a)) (* (* b a) a) (sqrt (* a b)))
3.0ms
a
@inf
((* (* (neg b) a) (* (sqrt a) (* (sqrt b) (sqrt (* b a))))) (* (neg b) a) (neg b) (* (sqrt a) (* (sqrt b) (sqrt (* b a)))) (* (* (neg b) a) (* (sqrt (* (* a a) b)) (sqrt b))) (* (sqrt (* (* a a) b)) (sqrt b)) (* (* (neg b) a) (* (sqrt (* (* b a) a)) (sqrt b))) (* (sqrt (* (* b a) a)) (sqrt b)) (* (* (* (neg b) a) (sqrt (* b a))) (sqrt (* b a))) (* (* (neg b) a) (sqrt (* b a))) (* (sqrt (sqrt (* b a))) (sqrt (sqrt (* b a)))) (* (* (sqrt (sqrt (* b a))) (sqrt (sqrt (* b a)))) (sqrt (* a b))) (* (* (neg b) a) (* (* (sqrt (sqrt (* b a))) (sqrt (sqrt (* b a)))) (sqrt (* a b)))) (sqrt (* b a)) (* (sqrt b) (sqrt (* b a))) (sqrt (* (* a a) b)) (* (* a a) b) (sqrt (* (* b a) a)) (* (* b a) a) (sqrt (* a b)))

simplify30.0ms (1.3%)

Memory
33.7MiB live, 33.7MiB allocated; 0ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03983
19983
231683
0104983
Stop Event
iter limit
iter limit
iter limit
unsound
Counts
17 → 17
Calls
Call 1
Inputs
(* -1 (* (pow a 2) (pow b 2)))
(* -1 (* a b))
(* a b)
(* -1 (sqrt (* (pow a 3) (pow b 3))))
(sqrt (* a b))
(* (sqrt a) b)
(* a (sqrt b))
(* (pow a 2) b)
(* (pow a 2) (* (pow b 2) (pow (sqrt -1) 2)))
(* -1 (* a (* b (pow (sqrt -1) 2))))
(* (pow a 2) (pow b 2))
(* (sqrt (* (pow a 3) (pow b 3))) (pow (sqrt -1) 2))
(* -1 (* (sqrt (* a b)) (pow (sqrt -1) 2)))
(* -1 (* (sqrt a) (* b (pow (sqrt -1) 2))))
(* -1 (* a (sqrt b)))
(* -1 b)
(* -1 (* (* a (pow (sqrt -1) 2)) (sqrt b)))
Outputs
(* -1 (* (pow a 2) (pow b 2)))
(*.f64 (*.f64 (*.f64 (neg.f64 a) a) b) b)
(* -1 (* a b))
(*.f64 (neg.f64 b) a)
(* a b)
(*.f64 a b)
(* -1 (sqrt (* (pow a 3) (pow b 3))))
(neg.f64 (sqrt.f64 (pow.f64 (*.f64 a b) #s(literal 3 binary64))))
(sqrt (* a b))
(sqrt.f64 (*.f64 a b))
(* (sqrt a) b)
(*.f64 (sqrt.f64 a) b)
(* a (sqrt b))
(*.f64 (sqrt.f64 b) a)
(* (pow a 2) b)
(*.f64 (*.f64 a b) a)
(* (pow a 2) (* (pow b 2) (pow (sqrt -1) 2)))
(*.f64 (*.f64 (*.f64 (neg.f64 a) a) b) b)
(* -1 (* a (* b (pow (sqrt -1) 2))))
(*.f64 a b)
(* (pow a 2) (pow b 2))
(*.f64 (*.f64 (*.f64 a b) b) a)
(* (sqrt (* (pow a 3) (pow b 3))) (pow (sqrt -1) 2))
(neg.f64 (sqrt.f64 (pow.f64 (*.f64 a b) #s(literal 3 binary64))))
(* -1 (* (sqrt (* a b)) (pow (sqrt -1) 2)))
(sqrt.f64 (*.f64 a b))
(* -1 (* (sqrt a) (* b (pow (sqrt -1) 2))))
(*.f64 (sqrt.f64 a) b)
(* -1 (* a (sqrt b)))
(*.f64 (neg.f64 a) (sqrt.f64 b))
(* -1 b)
(neg.f64 b)
(* -1 (* (* a (pow (sqrt -1) 2)) (sqrt b)))
(*.f64 (sqrt.f64 b) a)

rewrite40.0ms (1.8%)

Memory
2.3MiB live, 47.6MiB allocated; 3ms collecting garbage
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
028185
054161
1127105
0444105
Stop Event
iter limit
iter limit
iter limit
unsound
iter limit
Counts
20 → 363
Calls
Call 1
Inputs
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 b) (sqrt.f64 (*.f64 b a)))))
(*.f64 (neg.f64 b) a)
(neg.f64 b)
(*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 b) (sqrt.f64 (*.f64 b a))))
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (sqrt.f64 (*.f64 (*.f64 a a) b)) (sqrt.f64 b)))
(*.f64 (sqrt.f64 (*.f64 (*.f64 a a) b)) (sqrt.f64 b))
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (sqrt.f64 (*.f64 (*.f64 b a) a)) (sqrt.f64 b)))
(*.f64 (sqrt.f64 (*.f64 (*.f64 b a) a)) (sqrt.f64 b))
(*.f64 (*.f64 (*.f64 (neg.f64 b) a) (sqrt.f64 (*.f64 b a))) (sqrt.f64 (*.f64 b a)))
(*.f64 (*.f64 (neg.f64 b) a) (sqrt.f64 (*.f64 b a)))
(*.f64 (sqrt.f64 (sqrt.f64 (*.f64 b a))) (sqrt.f64 (sqrt.f64 (*.f64 b a))))
(*.f64 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 b a))) (sqrt.f64 (sqrt.f64 (*.f64 b a)))) (sqrt.f64 (*.f64 a b)))
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 b a))) (sqrt.f64 (sqrt.f64 (*.f64 b a)))) (sqrt.f64 (*.f64 a b))))
(sqrt.f64 (*.f64 b a))
(*.f64 (sqrt.f64 b) (sqrt.f64 (*.f64 b a)))
(sqrt.f64 (*.f64 (*.f64 a a) b))
(*.f64 (*.f64 a a) b)
(sqrt.f64 (*.f64 (*.f64 b a) a))
(*.f64 (*.f64 b a) a)
(sqrt.f64 (*.f64 a b))
Outputs
(*.f64 (*.f64 (*.f64 (sqrt.f64 a) (*.f64 a (neg.f64 b))) (sqrt.f64 (*.f64 a b))) (sqrt.f64 b))
(*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b))) (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))) (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))))
(*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b))) (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))
(*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b))) (sqrt.f64 b)) (sqrt.f64 a))
(*.f64 (*.f64 (*.f64 a b) (neg.f64 b)) a)
(*.f64 (*.f64 (*.f64 a (neg.f64 b)) (sqrt.f64 (*.f64 (*.f64 a b) b))) (sqrt.f64 a))
(*.f64 (*.f64 (sqrt.f64 (*.f64 a b)) (neg.f64 b)) (*.f64 (sqrt.f64 (*.f64 a b)) a))
(*.f64 (*.f64 (*.f64 a (neg.f64 b)) (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (pow.f64 (sqrt.f64 (*.f64 a b)) #s(literal 3/2 binary64)))
(*.f64 (*.f64 (*.f64 a (neg.f64 b)) (sqrt.f64 b)) (*.f64 (fabs.f64 a) (sqrt.f64 b)))
(*.f64 (*.f64 (*.f64 a a) b) (neg.f64 b))
(*.f64 (*.f64 (*.f64 (fabs.f64 a) (sqrt.f64 b)) (*.f64 a (neg.f64 b))) (sqrt.f64 b))
(*.f64 (*.f64 (sqrt.f64 a) (*.f64 a (neg.f64 b))) (sqrt.f64 (*.f64 (*.f64 a b) b)))
(*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b)))))
(*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (*.f64 (pow.f64 (sqrt.f64 (*.f64 a b)) #s(literal 3/2 binary64)) (*.f64 a (neg.f64 b))))
(*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b)))))
(*.f64 (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b))) (sqrt.f64 (*.f64 a b)))
(*.f64 (*.f64 (fabs.f64 a) (sqrt.f64 b)) (*.f64 (sqrt.f64 b) (*.f64 a (neg.f64 b))))
(*.f64 (*.f64 a b) (*.f64 a (neg.f64 b)))
(*.f64 (sqrt.f64 (*.f64 (*.f64 a b) b)) (*.f64 (sqrt.f64 a) (*.f64 a (neg.f64 b))))
(*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b))))
(*.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b)))))
(*.f64 (sqrt.f64 b) (*.f64 (*.f64 (fabs.f64 a) (sqrt.f64 b)) (*.f64 a (neg.f64 b))))
(*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 (*.f64 (*.f64 a b) b)) (*.f64 a (neg.f64 b))))
(*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b)))))
(*.f64 (*.f64 a (neg.f64 b)) (*.f64 a b))
(*.f64 a (*.f64 (neg.f64 b) (*.f64 a b)))
(*.f64 (neg.f64 b) (*.f64 (*.f64 a a) b))
(neg.f64 (*.f64 (*.f64 (*.f64 a a) b) b))
(*.f64 (neg.f64 a) b)
(*.f64 a (neg.f64 b))
(*.f64 (neg.f64 b) a)
(*.f64 b (neg.f64 a))
(neg.f64 (*.f64 a b))
(neg.f64 b)
(*.f64 (*.f64 (sqrt.f64 (*.f64 a b)) (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))) (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))))
(*.f64 (*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))))
(*.f64 (*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))) (*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))))
(*.f64 (*.f64 (sqrt.f64 b) (sqrt.f64 b)) (fabs.f64 a))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 a b))) (neg.f64 (sqrt.f64 (*.f64 a b))))
(*.f64 (pow.f64 (sqrt.f64 (*.f64 a b)) #s(literal 3/2 binary64)) (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))
(*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (sqrt.f64 (*.f64 a b))))
(*.f64 (fabs.f64 a) (*.f64 (sqrt.f64 b) (sqrt.f64 b)))
(*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (pow.f64 (sqrt.f64 (*.f64 a b)) #s(literal 3/2 binary64)))
(*.f64 (*.f64 (fabs.f64 a) (sqrt.f64 b)) (sqrt.f64 b))
(*.f64 (sqrt.f64 (*.f64 (*.f64 a b) b)) (sqrt.f64 a))
(*.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 (*.f64 a b)))
(*.f64 (sqrt.f64 b) (*.f64 (fabs.f64 a) (sqrt.f64 b)))
(*.f64 (sqrt.f64 a) (sqrt.f64 (*.f64 (*.f64 a b) b)))
(*.f64 a b)
(*.f64 b a)
(pow.f64 (*.f64 (*.f64 (*.f64 a a) b) b) #s(literal 1/2 binary64))
(pow.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) #s(literal 4 binary64))
(pow.f64 (*.f64 a b) #s(literal 1 binary64))
(pow.f64 (sqrt.f64 (*.f64 a b)) #s(literal 2 binary64))
(sqrt.f64 (*.f64 (*.f64 (*.f64 a b) b) a))
(sqrt.f64 (*.f64 (*.f64 (*.f64 a a) b) b))
(*.f64 (*.f64 (*.f64 (sqrt.f64 a) (*.f64 a (neg.f64 b))) (sqrt.f64 (*.f64 a b))) (sqrt.f64 b))
(*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b))) (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))) (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))))
(*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b))) (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))
(*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b))) (sqrt.f64 b)) (sqrt.f64 a))
(*.f64 (*.f64 (*.f64 a b) (neg.f64 b)) a)
(*.f64 (*.f64 (*.f64 a (neg.f64 b)) (sqrt.f64 (*.f64 (*.f64 a b) b))) (sqrt.f64 a))
(*.f64 (*.f64 (sqrt.f64 (*.f64 a b)) (neg.f64 b)) (*.f64 (sqrt.f64 (*.f64 a b)) a))
(*.f64 (*.f64 (*.f64 a (neg.f64 b)) (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (pow.f64 (sqrt.f64 (*.f64 a b)) #s(literal 3/2 binary64)))
(*.f64 (*.f64 (*.f64 a (neg.f64 b)) (sqrt.f64 b)) (*.f64 (fabs.f64 a) (sqrt.f64 b)))
(*.f64 (*.f64 (*.f64 a a) b) (neg.f64 b))
(*.f64 (*.f64 (*.f64 (fabs.f64 a) (sqrt.f64 b)) (*.f64 a (neg.f64 b))) (sqrt.f64 b))
(*.f64 (*.f64 (sqrt.f64 a) (*.f64 a (neg.f64 b))) (sqrt.f64 (*.f64 (*.f64 a b) b)))
(*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b)))))
(*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (*.f64 (pow.f64 (sqrt.f64 (*.f64 a b)) #s(literal 3/2 binary64)) (*.f64 a (neg.f64 b))))
(*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b)))))
(*.f64 (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b))) (sqrt.f64 (*.f64 a b)))
(*.f64 (*.f64 (fabs.f64 a) (sqrt.f64 b)) (*.f64 (sqrt.f64 b) (*.f64 a (neg.f64 b))))
(*.f64 (*.f64 a b) (*.f64 a (neg.f64 b)))
(*.f64 (sqrt.f64 (*.f64 (*.f64 a b) b)) (*.f64 (sqrt.f64 a) (*.f64 a (neg.f64 b))))
(*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b))))
(*.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b)))))
(*.f64 (sqrt.f64 b) (*.f64 (*.f64 (fabs.f64 a) (sqrt.f64 b)) (*.f64 a (neg.f64 b))))
(*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 (*.f64 (*.f64 a b) b)) (*.f64 a (neg.f64 b))))
(*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b)))))
(*.f64 (*.f64 a (neg.f64 b)) (*.f64 a b))
(*.f64 a (*.f64 (neg.f64 b) (*.f64 a b)))
(*.f64 (neg.f64 b) (*.f64 (*.f64 a a) b))
(neg.f64 (*.f64 (*.f64 (*.f64 a a) b) b))
(*.f64 (*.f64 (sqrt.f64 (*.f64 a b)) (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))) (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))))
(*.f64 (*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))))
(*.f64 (*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))) (*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))))
(*.f64 (*.f64 (sqrt.f64 b) (sqrt.f64 b)) (fabs.f64 a))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 a b))) (neg.f64 (sqrt.f64 (*.f64 a b))))
(*.f64 (pow.f64 (sqrt.f64 (*.f64 a b)) #s(literal 3/2 binary64)) (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))
(*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (sqrt.f64 (*.f64 a b))))
(*.f64 (fabs.f64 a) (*.f64 (sqrt.f64 b) (sqrt.f64 b)))
(*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (pow.f64 (sqrt.f64 (*.f64 a b)) #s(literal 3/2 binary64)))
(*.f64 (*.f64 (fabs.f64 a) (sqrt.f64 b)) (sqrt.f64 b))
(*.f64 (sqrt.f64 (*.f64 (*.f64 a b) b)) (sqrt.f64 a))
(*.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 (*.f64 a b)))
(*.f64 (sqrt.f64 b) (*.f64 (fabs.f64 a) (sqrt.f64 b)))
(*.f64 (sqrt.f64 a) (sqrt.f64 (*.f64 (*.f64 a b) b)))
(*.f64 a b)
(*.f64 b a)
(pow.f64 (*.f64 (*.f64 (*.f64 a a) b) b) #s(literal 1/2 binary64))
(pow.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) #s(literal 4 binary64))
(pow.f64 (*.f64 a b) #s(literal 1 binary64))
(pow.f64 (sqrt.f64 (*.f64 a b)) #s(literal 2 binary64))
(sqrt.f64 (*.f64 (*.f64 (*.f64 a b) b) a))
(sqrt.f64 (*.f64 (*.f64 (*.f64 a a) b) b))
(*.f64 (*.f64 (*.f64 (sqrt.f64 a) (*.f64 a (neg.f64 b))) (sqrt.f64 (*.f64 a b))) (sqrt.f64 b))
(*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b))) (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))) (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))))
(*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b))) (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))
(*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b))) (sqrt.f64 b)) (sqrt.f64 a))
(*.f64 (*.f64 (*.f64 a b) (neg.f64 b)) a)
(*.f64 (*.f64 (*.f64 a (neg.f64 b)) (sqrt.f64 (*.f64 (*.f64 a b) b))) (sqrt.f64 a))
(*.f64 (*.f64 (sqrt.f64 (*.f64 a b)) (neg.f64 b)) (*.f64 (sqrt.f64 (*.f64 a b)) a))
(*.f64 (*.f64 (*.f64 a (neg.f64 b)) (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (pow.f64 (sqrt.f64 (*.f64 a b)) #s(literal 3/2 binary64)))
(*.f64 (*.f64 (*.f64 a (neg.f64 b)) (sqrt.f64 b)) (*.f64 (fabs.f64 a) (sqrt.f64 b)))
(*.f64 (*.f64 (*.f64 a a) b) (neg.f64 b))
(*.f64 (*.f64 (*.f64 (fabs.f64 a) (sqrt.f64 b)) (*.f64 a (neg.f64 b))) (sqrt.f64 b))
(*.f64 (*.f64 (sqrt.f64 a) (*.f64 a (neg.f64 b))) (sqrt.f64 (*.f64 (*.f64 a b) b)))
(*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b)))))
(*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (*.f64 (pow.f64 (sqrt.f64 (*.f64 a b)) #s(literal 3/2 binary64)) (*.f64 a (neg.f64 b))))
(*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b)))))
(*.f64 (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b))) (sqrt.f64 (*.f64 a b)))
(*.f64 (*.f64 (fabs.f64 a) (sqrt.f64 b)) (*.f64 (sqrt.f64 b) (*.f64 a (neg.f64 b))))
(*.f64 (*.f64 a b) (*.f64 a (neg.f64 b)))
(*.f64 (sqrt.f64 (*.f64 (*.f64 a b) b)) (*.f64 (sqrt.f64 a) (*.f64 a (neg.f64 b))))
(*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b))))
(*.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b)))))
(*.f64 (sqrt.f64 b) (*.f64 (*.f64 (fabs.f64 a) (sqrt.f64 b)) (*.f64 a (neg.f64 b))))
(*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 (*.f64 (*.f64 a b) b)) (*.f64 a (neg.f64 b))))
(*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b)))))
(*.f64 (*.f64 a (neg.f64 b)) (*.f64 a b))
(*.f64 a (*.f64 (neg.f64 b) (*.f64 a b)))
(*.f64 (neg.f64 b) (*.f64 (*.f64 a a) b))
(neg.f64 (*.f64 (*.f64 (*.f64 a a) b) b))
(*.f64 (*.f64 (sqrt.f64 (*.f64 a b)) (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))) (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))))
(*.f64 (*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))))
(*.f64 (*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))) (*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))))
(*.f64 (*.f64 (sqrt.f64 b) (sqrt.f64 b)) (fabs.f64 a))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 a b))) (neg.f64 (sqrt.f64 (*.f64 a b))))
(*.f64 (pow.f64 (sqrt.f64 (*.f64 a b)) #s(literal 3/2 binary64)) (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))
(*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (sqrt.f64 (*.f64 a b))))
(*.f64 (fabs.f64 a) (*.f64 (sqrt.f64 b) (sqrt.f64 b)))
(*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (pow.f64 (sqrt.f64 (*.f64 a b)) #s(literal 3/2 binary64)))
(*.f64 (*.f64 (fabs.f64 a) (sqrt.f64 b)) (sqrt.f64 b))
(*.f64 (sqrt.f64 (*.f64 (*.f64 a b) b)) (sqrt.f64 a))
(*.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 (*.f64 a b)))
(*.f64 (sqrt.f64 b) (*.f64 (fabs.f64 a) (sqrt.f64 b)))
(*.f64 (sqrt.f64 a) (sqrt.f64 (*.f64 (*.f64 a b) b)))
(*.f64 a b)
(*.f64 b a)
(pow.f64 (*.f64 (*.f64 (*.f64 a a) b) b) #s(literal 1/2 binary64))
(pow.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) #s(literal 4 binary64))
(pow.f64 (*.f64 a b) #s(literal 1 binary64))
(pow.f64 (sqrt.f64 (*.f64 a b)) #s(literal 2 binary64))
(sqrt.f64 (*.f64 (*.f64 (*.f64 a b) b) a))
(sqrt.f64 (*.f64 (*.f64 (*.f64 a a) b) b))
(*.f64 (*.f64 (*.f64 (sqrt.f64 a) (*.f64 a (neg.f64 b))) (sqrt.f64 (*.f64 a b))) (sqrt.f64 b))
(*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b))) (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))) (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))))
(*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b))) (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))
(*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b))) (sqrt.f64 b)) (sqrt.f64 a))
(*.f64 (*.f64 (*.f64 a b) (neg.f64 b)) a)
(*.f64 (*.f64 (*.f64 a (neg.f64 b)) (sqrt.f64 (*.f64 (*.f64 a b) b))) (sqrt.f64 a))
(*.f64 (*.f64 (sqrt.f64 (*.f64 a b)) (neg.f64 b)) (*.f64 (sqrt.f64 (*.f64 a b)) a))
(*.f64 (*.f64 (*.f64 a (neg.f64 b)) (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (pow.f64 (sqrt.f64 (*.f64 a b)) #s(literal 3/2 binary64)))
(*.f64 (*.f64 (*.f64 a (neg.f64 b)) (sqrt.f64 b)) (*.f64 (fabs.f64 a) (sqrt.f64 b)))
(*.f64 (*.f64 (*.f64 a a) b) (neg.f64 b))
(*.f64 (*.f64 (*.f64 (fabs.f64 a) (sqrt.f64 b)) (*.f64 a (neg.f64 b))) (sqrt.f64 b))
(*.f64 (*.f64 (sqrt.f64 a) (*.f64 a (neg.f64 b))) (sqrt.f64 (*.f64 (*.f64 a b) b)))
(*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b)))))
(*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (*.f64 (pow.f64 (sqrt.f64 (*.f64 a b)) #s(literal 3/2 binary64)) (*.f64 a (neg.f64 b))))
(*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b)))))
(*.f64 (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b))) (sqrt.f64 (*.f64 a b)))
(*.f64 (*.f64 (fabs.f64 a) (sqrt.f64 b)) (*.f64 (sqrt.f64 b) (*.f64 a (neg.f64 b))))
(*.f64 (*.f64 a b) (*.f64 a (neg.f64 b)))
(*.f64 (sqrt.f64 (*.f64 (*.f64 a b) b)) (*.f64 (sqrt.f64 a) (*.f64 a (neg.f64 b))))
(*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b))))
(*.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b)))))
(*.f64 (sqrt.f64 b) (*.f64 (*.f64 (fabs.f64 a) (sqrt.f64 b)) (*.f64 a (neg.f64 b))))
(*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 (*.f64 (*.f64 a b) b)) (*.f64 a (neg.f64 b))))
(*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b)))))
(*.f64 (*.f64 a (neg.f64 b)) (*.f64 a b))
(*.f64 a (*.f64 (neg.f64 b) (*.f64 a b)))
(*.f64 (neg.f64 b) (*.f64 (*.f64 a a) b))
(neg.f64 (*.f64 (*.f64 (*.f64 a a) b) b))
(*.f64 (*.f64 (sqrt.f64 (*.f64 a b)) (neg.f64 b)) a)
(*.f64 (*.f64 (*.f64 a (neg.f64 b)) (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))) (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))))
(*.f64 (*.f64 (*.f64 a (neg.f64 b)) (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))
(*.f64 (*.f64 (*.f64 a (neg.f64 b)) (sqrt.f64 b)) (sqrt.f64 a))
(*.f64 (*.f64 (sqrt.f64 (*.f64 a b)) a) (neg.f64 b))
(*.f64 (*.f64 (sqrt.f64 a) (*.f64 a (neg.f64 b))) (sqrt.f64 b))
(*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (*.f64 a (neg.f64 b))))
(*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (*.f64 a (neg.f64 b))))
(*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b)))
(*.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 a) (*.f64 a (neg.f64 b))))
(*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 b) (*.f64 a (neg.f64 b))))
(*.f64 (*.f64 a (neg.f64 b)) (sqrt.f64 (*.f64 a b)))
(*.f64 a (*.f64 (neg.f64 b) (sqrt.f64 (*.f64 a b))))
(*.f64 (neg.f64 b) (*.f64 (sqrt.f64 (*.f64 a b)) a))
(neg.f64 (*.f64 (*.f64 a b) (sqrt.f64 (*.f64 a b))))
(neg.f64 (*.f64 b (*.f64 (sqrt.f64 (*.f64 a b)) a)))
(neg.f64 (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a b)))
(*.f64 (neg.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))) (neg.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))))
(*.f64 (sqrt.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (sqrt.f64 (pow.f64 (sqrt.f64 (*.f64 a b)) #s(literal 3/2 binary64))))
(*.f64 (sqrt.f64 (sqrt.f64 (*.f64 (*.f64 a b) b))) (sqrt.f64 (sqrt.f64 a)))
(*.f64 (sqrt.f64 (sqrt.f64 a)) (sqrt.f64 (sqrt.f64 (*.f64 (*.f64 a b) b))))
(*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 b) (sqrt.f64 a))
(*.f64 (sqrt.f64 a) (sqrt.f64 b))
(pow.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) #s(literal 2 binary64))
(pow.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 a b) #s(literal 1/2 binary64))
(pow.f64 (sqrt.f64 (*.f64 a b)) #s(literal 1 binary64))
(neg.f64 (*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))))
(neg.f64 (*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))))
(sqrt.f64 (*.f64 a b))
(fabs.f64 (sqrt.f64 (*.f64 a b)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 a b)) #s(literal 1/2 binary64)))
(*.f64 (*.f64 (sqrt.f64 (*.f64 a b)) (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))) (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))))
(*.f64 (*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))))
(*.f64 (*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))) (*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))))
(*.f64 (*.f64 (sqrt.f64 b) (sqrt.f64 b)) (fabs.f64 a))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 a b))) (neg.f64 (sqrt.f64 (*.f64 a b))))
(*.f64 (pow.f64 (sqrt.f64 (*.f64 a b)) #s(literal 3/2 binary64)) (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))
(*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (sqrt.f64 (*.f64 a b))))
(*.f64 (fabs.f64 a) (*.f64 (sqrt.f64 b) (sqrt.f64 b)))
(*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (pow.f64 (sqrt.f64 (*.f64 a b)) #s(literal 3/2 binary64)))
(*.f64 (*.f64 (fabs.f64 a) (sqrt.f64 b)) (sqrt.f64 b))
(*.f64 (sqrt.f64 (*.f64 (*.f64 a b) b)) (sqrt.f64 a))
(*.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 (*.f64 a b)))
(*.f64 (sqrt.f64 b) (*.f64 (fabs.f64 a) (sqrt.f64 b)))
(*.f64 (sqrt.f64 a) (sqrt.f64 (*.f64 (*.f64 a b) b)))
(*.f64 a b)
(*.f64 b a)
(pow.f64 (*.f64 (*.f64 (*.f64 a a) b) b) #s(literal 1/2 binary64))
(pow.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) #s(literal 4 binary64))
(pow.f64 (*.f64 a b) #s(literal 1 binary64))
(pow.f64 (sqrt.f64 (*.f64 a b)) #s(literal 2 binary64))
(sqrt.f64 (*.f64 (*.f64 (*.f64 a b) b) a))
(sqrt.f64 (*.f64 (*.f64 (*.f64 a a) b) b))
(*.f64 (*.f64 (*.f64 (sqrt.f64 a) (*.f64 a (neg.f64 b))) (sqrt.f64 (*.f64 a b))) (sqrt.f64 b))
(*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b))) (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))) (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))))
(*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b))) (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))
(*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b))) (sqrt.f64 b)) (sqrt.f64 a))
(*.f64 (*.f64 (*.f64 a b) (neg.f64 b)) a)
(*.f64 (*.f64 (*.f64 a (neg.f64 b)) (sqrt.f64 (*.f64 (*.f64 a b) b))) (sqrt.f64 a))
(*.f64 (*.f64 (sqrt.f64 (*.f64 a b)) (neg.f64 b)) (*.f64 (sqrt.f64 (*.f64 a b)) a))
(*.f64 (*.f64 (*.f64 a (neg.f64 b)) (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (pow.f64 (sqrt.f64 (*.f64 a b)) #s(literal 3/2 binary64)))
(*.f64 (*.f64 (*.f64 a (neg.f64 b)) (sqrt.f64 b)) (*.f64 (fabs.f64 a) (sqrt.f64 b)))
(*.f64 (*.f64 (*.f64 a a) b) (neg.f64 b))
(*.f64 (*.f64 (*.f64 (fabs.f64 a) (sqrt.f64 b)) (*.f64 a (neg.f64 b))) (sqrt.f64 b))
(*.f64 (*.f64 (sqrt.f64 a) (*.f64 a (neg.f64 b))) (sqrt.f64 (*.f64 (*.f64 a b) b)))
(*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b)))))
(*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (*.f64 (pow.f64 (sqrt.f64 (*.f64 a b)) #s(literal 3/2 binary64)) (*.f64 a (neg.f64 b))))
(*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b)))))
(*.f64 (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b))) (sqrt.f64 (*.f64 a b)))
(*.f64 (*.f64 (fabs.f64 a) (sqrt.f64 b)) (*.f64 (sqrt.f64 b) (*.f64 a (neg.f64 b))))
(*.f64 (*.f64 a b) (*.f64 a (neg.f64 b)))
(*.f64 (sqrt.f64 (*.f64 (*.f64 a b) b)) (*.f64 (sqrt.f64 a) (*.f64 a (neg.f64 b))))
(*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b))))
(*.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b)))))
(*.f64 (sqrt.f64 b) (*.f64 (*.f64 (fabs.f64 a) (sqrt.f64 b)) (*.f64 a (neg.f64 b))))
(*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 (*.f64 (*.f64 a b) b)) (*.f64 a (neg.f64 b))))
(*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 (*.f64 a b)) (*.f64 a (neg.f64 b)))))
(*.f64 (*.f64 a (neg.f64 b)) (*.f64 a b))
(*.f64 a (*.f64 (neg.f64 b) (*.f64 a b)))
(*.f64 (neg.f64 b) (*.f64 (*.f64 a a) b))
(neg.f64 (*.f64 (*.f64 (*.f64 a a) b) b))
(*.f64 (neg.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))) (neg.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))))
(*.f64 (sqrt.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (sqrt.f64 (pow.f64 (sqrt.f64 (*.f64 a b)) #s(literal 3/2 binary64))))
(*.f64 (sqrt.f64 (sqrt.f64 (*.f64 (*.f64 a b) b))) (sqrt.f64 (sqrt.f64 a)))
(*.f64 (sqrt.f64 (sqrt.f64 a)) (sqrt.f64 (sqrt.f64 (*.f64 (*.f64 a b) b))))
(*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 b) (sqrt.f64 a))
(*.f64 (sqrt.f64 a) (sqrt.f64 b))
(pow.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) #s(literal 2 binary64))
(pow.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 a b) #s(literal 1/2 binary64))
(pow.f64 (sqrt.f64 (*.f64 a b)) #s(literal 1 binary64))
(neg.f64 (*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))))
(neg.f64 (*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))))
(sqrt.f64 (*.f64 a b))
(fabs.f64 (sqrt.f64 (*.f64 a b)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 a b)) #s(literal 1/2 binary64)))
(*.f64 (*.f64 (sqrt.f64 b) (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))) (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))))
(*.f64 (*.f64 (sqrt.f64 b) (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))
(*.f64 (*.f64 (sqrt.f64 b) (sqrt.f64 b)) (sqrt.f64 a))
(*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (sqrt.f64 b)))
(*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (sqrt.f64 b)))
(*.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 b))
(*.f64 (sqrt.f64 b) (sqrt.f64 (*.f64 a b)))
(*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 b) (sqrt.f64 b)))
(pow.f64 (*.f64 (*.f64 a b) b) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (*.f64 a b) b))
(*.f64 (pow.f64 (*.f64 (*.f64 a a) b) #s(literal 1/4 binary64)) (pow.f64 (*.f64 (*.f64 a a) b) #s(literal 1/4 binary64)))
(*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (sqrt.f64 a)))
(*.f64 (fabs.f64 a) (sqrt.f64 b))
(*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (sqrt.f64 a)))
(*.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 a))
(*.f64 (sqrt.f64 b) (fabs.f64 a))
(*.f64 (sqrt.f64 a) (sqrt.f64 (*.f64 a b)))
(pow.f64 (*.f64 (*.f64 a a) b) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (*.f64 a a) b))
(exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 a a) b)) #s(literal 1/2 binary64)))
(*.f64 (*.f64 a (*.f64 (fabs.f64 a) (sqrt.f64 b))) (sqrt.f64 b))
(*.f64 (*.f64 b (fabs.f64 a)) (fabs.f64 a))
(*.f64 (*.f64 a (sqrt.f64 (*.f64 (*.f64 a b) b))) (sqrt.f64 a))
(*.f64 (*.f64 a (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (pow.f64 (sqrt.f64 (*.f64 a b)) #s(literal 3/2 binary64)))
(*.f64 (*.f64 a (sqrt.f64 b)) (*.f64 (fabs.f64 a) (sqrt.f64 b)))
(*.f64 (*.f64 a (sqrt.f64 a)) (sqrt.f64 (*.f64 (*.f64 a b) b)))
(*.f64 (*.f64 (sqrt.f64 (*.f64 a b)) a) (sqrt.f64 (*.f64 a b)))
(*.f64 (neg.f64 a) (*.f64 a (neg.f64 b)))
(*.f64 (fabs.f64 a) (*.f64 (fabs.f64 a) b))
(*.f64 (*.f64 a a) b)
(*.f64 (*.f64 a b) a)
(*.f64 (*.f64 a (neg.f64 b)) (neg.f64 a))
(*.f64 a (*.f64 a b))
(*.f64 b (*.f64 a a))
(*.f64 (pow.f64 (*.f64 (*.f64 a a) b) #s(literal 1/4 binary64)) (pow.f64 (*.f64 (*.f64 a a) b) #s(literal 1/4 binary64)))
(*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (sqrt.f64 a)))
(*.f64 (fabs.f64 a) (sqrt.f64 b))
(*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (sqrt.f64 a)))
(*.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 a))
(*.f64 (sqrt.f64 b) (fabs.f64 a))
(*.f64 (sqrt.f64 a) (sqrt.f64 (*.f64 a b)))
(pow.f64 (*.f64 (*.f64 a a) b) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (*.f64 a a) b))
(exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 a a) b)) #s(literal 1/2 binary64)))
(*.f64 (*.f64 a (*.f64 (fabs.f64 a) (sqrt.f64 b))) (sqrt.f64 b))
(*.f64 (*.f64 b (fabs.f64 a)) (fabs.f64 a))
(*.f64 (*.f64 a (sqrt.f64 (*.f64 (*.f64 a b) b))) (sqrt.f64 a))
(*.f64 (*.f64 a (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (pow.f64 (sqrt.f64 (*.f64 a b)) #s(literal 3/2 binary64)))
(*.f64 (*.f64 a (sqrt.f64 b)) (*.f64 (fabs.f64 a) (sqrt.f64 b)))
(*.f64 (*.f64 a (sqrt.f64 a)) (sqrt.f64 (*.f64 (*.f64 a b) b)))
(*.f64 (*.f64 (sqrt.f64 (*.f64 a b)) a) (sqrt.f64 (*.f64 a b)))
(*.f64 (neg.f64 a) (*.f64 a (neg.f64 b)))
(*.f64 (fabs.f64 a) (*.f64 (fabs.f64 a) b))
(*.f64 (*.f64 a a) b)
(*.f64 (*.f64 a b) a)
(*.f64 (*.f64 a (neg.f64 b)) (neg.f64 a))
(*.f64 a (*.f64 a b))
(*.f64 b (*.f64 a a))
(*.f64 (neg.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))) (neg.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))))
(*.f64 (sqrt.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (sqrt.f64 (pow.f64 (sqrt.f64 (*.f64 a b)) #s(literal 3/2 binary64))))
(*.f64 (sqrt.f64 (sqrt.f64 (*.f64 (*.f64 a b) b))) (sqrt.f64 (sqrt.f64 a)))
(*.f64 (sqrt.f64 (sqrt.f64 a)) (sqrt.f64 (sqrt.f64 (*.f64 (*.f64 a b) b))))
(*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 b) (sqrt.f64 a))
(*.f64 (sqrt.f64 a) (sqrt.f64 b))
(pow.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) #s(literal 2 binary64))
(pow.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 a b) #s(literal 1/2 binary64))
(pow.f64 (sqrt.f64 (*.f64 a b)) #s(literal 1 binary64))
(neg.f64 (*.f64 (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))))
(neg.f64 (*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (neg.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)))))
(sqrt.f64 (*.f64 a b))
(fabs.f64 (sqrt.f64 (*.f64 a b)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 a b)) #s(literal 1/2 binary64)))

eval20.0ms (0.9%)

Memory
-9.9MiB live, 35.6MiB allocated; 3ms collecting garbage
Compiler

Compiled 2 794 to 452 computations (83.8% saved)

prune19.0ms (0.8%)

Memory
-22.4MiB live, 27.6MiB allocated; 8ms collecting garbage
Pruning

16 alts after pruning (5 fresh and 11 done)

PrunedKeptTotal
New1635168
Fresh101
Picked325
Done099
Total16716183
Accuracy
100.0%
Counts
183 → 16
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.5%
(*.f64 (*.f64 (*.f64 (neg.f64 b) a) (sqrt.f64 (*.f64 b a))) (sqrt.f64 (*.f64 b a)))
92.5%
(*.f64 (*.f64 (*.f64 (neg.f64 b) a) b) a)
25.1%
(*.f64 (*.f64 (*.f64 b b) a) a)
99.6%
(*.f64 (*.f64 (*.f64 a (neg.f64 b)) (sqrt.f64 b)) (*.f64 (fabs.f64 a) (sqrt.f64 b)))
95.3%
(*.f64 (*.f64 (*.f64 a (neg.f64 b)) a) b)
25.3%
(*.f64 (*.f64 (*.f64 a b) a) b)
99.5%
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (sqrt.f64 a))) (sqrt.f64 b)))
99.5%
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 b a))) (sqrt.f64 (sqrt.f64 (*.f64 b a)))) (sqrt.f64 (*.f64 a b))))
99.5%
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (sqrt.f64 a) #s(approx (* (sqrt b) (sqrt (* b a))) (*.f64 (sqrt.f64 a) b))))
99.6%
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 #s(approx (sqrt (* (* a a) b)) (*.f64 (sqrt.f64 b) a)) (sqrt.f64 b)))
99.7%
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 b a))
83.0%
(*.f64 (*.f64 (neg.f64 b) a) (sqrt.f64 (*.f64 (*.f64 (*.f64 a a) b) b)))
25.5%
(*.f64 (*.f64 b (*.f64 a a)) b)
25.2%
(*.f64 (*.f64 b b) (*.f64 a a))
25.3%
(*.f64 (*.f64 b a) (*.f64 b a))
83.0%
(neg.f64 (*.f64 (*.f64 (*.f64 a a) b) b))
Compiler

Compiled 467 to 208 computations (55.5% saved)

regimes44.0ms (2%)

Memory
-2.1MiB live, 44.6MiB allocated; 2ms collecting garbage
Counts
23 → 1
Calls
Call 1
Inputs
(*.f64 (*.f64 b a) (*.f64 b a))
(*.f64 (*.f64 b b) (*.f64 a a))
(*.f64 (*.f64 b (*.f64 a a)) b)
(*.f64 (*.f64 (*.f64 a b) a) b)
(*.f64 (*.f64 (*.f64 b a) b) a)
(*.f64 (*.f64 (*.f64 b b) a) a)
(neg.f64 (*.f64 (*.f64 (*.f64 a a) b) b))
(neg.f64 (*.f64 (*.f64 (*.f64 b a) a) b))
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 b a))
(*.f64 (*.f64 (*.f64 a (neg.f64 b)) a) b)
(*.f64 (*.f64 (*.f64 (neg.f64 b) a) b) a)
(*.f64 (*.f64 (neg.f64 b) a) (sqrt.f64 (*.f64 (*.f64 (*.f64 a a) b) b)))
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 #s(approx (sqrt (* (* a a) b)) (*.f64 (sqrt.f64 b) a)) (sqrt.f64 b)))
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (sqrt.f64 a) #s(approx (* (sqrt b) (sqrt (* b a))) (*.f64 (sqrt.f64 a) b))))
(*.f64 (*.f64 (*.f64 a (neg.f64 b)) (sqrt.f64 b)) (*.f64 (fabs.f64 a) (sqrt.f64 b)))
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 (*.f64 a b))))
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (sqrt.f64 (*.f64 (*.f64 a a) b)) (sqrt.f64 b)))
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (sqrt.f64 (*.f64 (*.f64 b a) a)) (sqrt.f64 b)))
(*.f64 (*.f64 (*.f64 (neg.f64 b) a) (sqrt.f64 (*.f64 b a))) (sqrt.f64 (*.f64 b a)))
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 b) (sqrt.f64 (*.f64 b a)))))
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 b a))) (sqrt.f64 (sqrt.f64 (*.f64 b a)))) (sqrt.f64 (*.f64 a b))))
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (sqrt.f64 (*.f64 a b)) (exp.f64 (*.f64 (log.f64 (*.f64 b a)) #s(literal 1/2 binary64)))))
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 (*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (*.f64 (pow.f64 (*.f64 a b) #s(literal 1/4 binary64)) (sqrt.f64 a))) (sqrt.f64 b)))
Outputs
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 b a))
Calls

5 calls:

21.0ms
(*.f64 a a)
6.0ms
b
6.0ms
a
5.0ms
(neg.f64 (*.f64 (*.f64 (*.f64 a a) b) b))
5.0ms
(*.f64 (*.f64 (*.f64 a a) b) b)
Results
AccuracySegmentsBranch
99.7%1(*.f64 a a)
99.7%1(*.f64 (*.f64 (*.f64 a a) b) b)
99.7%1(neg.f64 (*.f64 (*.f64 (*.f64 a a) b) b))
99.7%1a
99.7%1b
Compiler

Compiled 20 to 18 computations (10% saved)

regimes13.0ms (0.6%)

Memory
16.0MiB live, 16.0MiB allocated; 0ms collecting garbage
Counts
8 → 1
Calls
Call 1
Inputs
(*.f64 (*.f64 b a) (*.f64 b a))
(*.f64 (*.f64 b b) (*.f64 a a))
(*.f64 (*.f64 b (*.f64 a a)) b)
(*.f64 (*.f64 (*.f64 a b) a) b)
(*.f64 (*.f64 (*.f64 b a) b) a)
(*.f64 (*.f64 (*.f64 b b) a) a)
(neg.f64 (*.f64 (*.f64 (*.f64 a a) b) b))
(neg.f64 (*.f64 (*.f64 (*.f64 b a) a) b))
Outputs
(neg.f64 (*.f64 (*.f64 (*.f64 b a) a) b))
Calls

5 calls:

3.0ms
b
3.0ms
a
2.0ms
(neg.f64 (*.f64 (*.f64 (*.f64 a a) b) b))
2.0ms
(*.f64 a a)
2.0ms
(*.f64 (*.f64 (*.f64 a a) b) b)
Results
AccuracySegmentsBranch
95.3%1(*.f64 a a)
95.3%1(*.f64 (*.f64 (*.f64 a a) b) b)
95.3%1(neg.f64 (*.f64 (*.f64 (*.f64 a a) b) b))
95.3%1a
95.3%1b
Compiler

Compiled 20 to 18 computations (10% saved)

regimes12.0ms (0.5%)

Memory
15.9MiB live, 16.0MiB allocated; 0ms collecting garbage
Counts
7 → 1
Calls
Call 1
Inputs
(*.f64 (*.f64 b a) (*.f64 b a))
(*.f64 (*.f64 b b) (*.f64 a a))
(*.f64 (*.f64 b (*.f64 a a)) b)
(*.f64 (*.f64 (*.f64 a b) a) b)
(*.f64 (*.f64 (*.f64 b a) b) a)
(*.f64 (*.f64 (*.f64 b b) a) a)
(neg.f64 (*.f64 (*.f64 (*.f64 a a) b) b))
Outputs
(neg.f64 (*.f64 (*.f64 (*.f64 a a) b) b))
Calls

5 calls:

3.0ms
a
2.0ms
b
2.0ms
(*.f64 a a)
2.0ms
(neg.f64 (*.f64 (*.f64 (*.f64 a a) b) b))
2.0ms
(*.f64 (*.f64 (*.f64 a a) b) b)
Results
AccuracySegmentsBranch
83.0%1a
83.0%1b
83.0%1(*.f64 a a)
83.0%1(*.f64 (*.f64 (*.f64 a a) b) b)
83.0%1(neg.f64 (*.f64 (*.f64 (*.f64 a a) b) b))
Compiler

Compiled 20 to 18 computations (10% saved)

regimes12.0ms (0.5%)

Memory
-25.3MiB live, 20.6MiB allocated; 3ms collecting garbage
Counts
6 → 1
Calls
Call 1
Inputs
(*.f64 (*.f64 b a) (*.f64 b a))
(*.f64 (*.f64 b b) (*.f64 a a))
(*.f64 (*.f64 b (*.f64 a a)) b)
(*.f64 (*.f64 (*.f64 a b) a) b)
(*.f64 (*.f64 (*.f64 b a) b) a)
(*.f64 (*.f64 (*.f64 b b) a) a)
Outputs
(*.f64 (*.f64 b (*.f64 a a)) b)
Calls

5 calls:

3.0ms
(neg.f64 (*.f64 (*.f64 (*.f64 a a) b) b))
2.0ms
b
2.0ms
a
2.0ms
(*.f64 a a)
2.0ms
(*.f64 (*.f64 (*.f64 a a) b) b)
Results
AccuracySegmentsBranch
25.5%1(*.f64 (*.f64 (*.f64 a a) b) b)
25.5%1(*.f64 a a)
25.5%1(neg.f64 (*.f64 (*.f64 (*.f64 a a) b) b))
25.5%1a
25.5%1b
Compiler

Compiled 20 to 18 computations (10% saved)

regimes6.0ms (0.3%)

Memory
13.4MiB live, 13.4MiB allocated; 0ms collecting garbage
Accuracy

Total -0.1b remaining (-0.3%)

Threshold costs -0.1b (-0.3%)

Counts
2 → 1
Calls
Call 1
Inputs
(*.f64 (*.f64 b a) (*.f64 b a))
(*.f64 (*.f64 b b) (*.f64 a a))
Outputs
(*.f64 (*.f64 b a) (*.f64 b a))
Calls

5 calls:

1.0ms
b
1.0ms
a
1.0ms
(neg.f64 (*.f64 (*.f64 (*.f64 a a) b) b))
1.0ms
(*.f64 a a)
1.0ms
(*.f64 (*.f64 (*.f64 a a) b) b)
Results
AccuracySegmentsBranch
25.3%1(*.f64 (*.f64 (*.f64 a a) b) b)
25.3%1(*.f64 a a)
25.3%1a
25.3%1b
25.3%1(neg.f64 (*.f64 (*.f64 (*.f64 a a) b) b))
Compiler

Compiled 20 to 18 computations (10% saved)

simplify10.0ms (0.4%)

Memory
14.0MiB live, 14.0MiB allocated; 0ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01638
13438
25438
36938
47238
Stop Event
saturated
Calls
Call 1
Inputs
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 b a))
(neg.f64 (*.f64 (*.f64 (*.f64 b a) a) b))
(neg.f64 (*.f64 (*.f64 (*.f64 a a) b) b))
(*.f64 (*.f64 b (*.f64 a a)) b)
(*.f64 (*.f64 b a) (*.f64 b a))
Outputs
(*.f64 (*.f64 (neg.f64 b) a) (*.f64 b a))
(*.f64 (*.f64 b a) (*.f64 (neg.f64 b) a))
(neg.f64 (*.f64 (*.f64 (*.f64 b a) a) b))
(*.f64 (*.f64 (*.f64 (neg.f64 b) a) a) b)
(neg.f64 (*.f64 (*.f64 (*.f64 a a) b) b))
(*.f64 (*.f64 (*.f64 a a) b) (neg.f64 b))
(*.f64 (*.f64 b (*.f64 a a)) b)
(*.f64 (*.f64 b a) (*.f64 b a))

derivations40.0ms (1.8%)

Memory
-5.7MiB live, 39.0MiB allocated; 3ms collecting garbage
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0623
01022
12622
29418
041418
Stop Event
fuel
iter limit
iter limit
iter limit
unsound
iter limit
Compiler

Compiled 38 to 14 computations (63.2% saved)

preprocess42.0ms (1.9%)

Memory
-8.0MiB live, 44.9MiB allocated; 22ms collecting garbage
Remove

(sort a b)

(abs a)

(abs b)

Compiler

Compiled 284 to 184 computations (35.2% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated; 0ms collecting garbage

Profiling

Loading profile data...