2-ancestry mixing, zero discriminant

Time bar (total: 3.1s)

start0.0ms (0%)

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

analyze20.0ms (0.7%)

Memory
-18.0MiB live, 27.7MiB allocated; 14ms collecting garbage
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
0%0%99.9%0.1%0%0%0%1
0%0%99.9%0.1%0%0%0%2
50%50%50%0.1%0%0%0%3
50%50%50%0.1%0%0%0%4
75%74.9%25%0.1%0%0%0%5
75%74.9%25%0.1%0%0%0%6
87.5%87.4%12.5%0.1%0%0%0%7
87.5%87.4%12.5%0.1%0%0%0%8
93.8%93.7%6.2%0.1%0%0%0%9
93.8%93.7%6.2%0.1%0%0%0%10
96.9%96.8%3.1%0.1%0%0%0%11
96.9%96.8%3.1%0.1%0%0%0%12
Compiler

Compiled 8 to 8 computations (0% saved)

sample748.0ms (24.2%)

Memory
56.7MiB live, 1 836.4MiB allocated; 283ms collecting garbage
Samples
468.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 261.0ms
ival-div: 115.0ms (44.1% of total)
ival-mult: 68.0ms (26.1% of total)
ival-cbrt: 61.0ms (23.4% of total)
ival-true: 7.0ms (2.7% of total)
exact: 5.0ms (1.9% of total)
ival-assert: 4.0ms (1.5% of total)
adjust: 2.0ms (0.8% of total)
Bogosity

explain107.0ms (3.5%)

Memory
5.7MiB live, 256.8MiB allocated; 56ms collecting garbage
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
540-3(2.2281099020738803e-36 6.850119466686574e+285)(cbrt.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)))
00-0-(/.f64 g (*.f64 #s(literal 2 binary64) a))
00-0-#s(literal 2 binary64)
00-0-a
00-0-g
00-0-(*.f64 #s(literal 2 binary64) a)
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
cbrt.f64(cbrt.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)))uflow-rescue260
(/.f64 g (*.f64 #s(literal 2 binary64) a))underflow26
cbrt.f64(cbrt.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)))oflow-rescue250
(/.f64 g (*.f64 #s(literal 2 binary64) a))overflow25
Confusion
Predicted +Predicted -
+513
-0202
Precision
1.0
Recall
0.9444444444444444
Confusion?
Predicted +Predicted MaybePredicted -
+5103
-00202
Precision?
1.0
Recall?
0.9444444444444444
Freqs
test
numberfreq
0205
151
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
39.0ms512×0valid
Compiler

Compiled 44 to 22 computations (50% saved)

Precisions
Click to see histograms. Total time spent on operations: 13.0ms
ival-div: 4.0ms (30.2% of total)
ival-mult: 4.0ms (30.2% of total)
ival-cbrt: 4.0ms (30.2% of total)
ival-true: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess210.0ms (6.8%)

Memory
15.2MiB live, 207.3MiB allocated; 45ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01636
13332
26332
311632
428932
5143132
6622932
066
096
1156
2246
3446
4896
53146
620156
081896
Stop Event
iter limit
node limit
iter limit
node limit
Calls
Call 1
Inputs
(cbrt.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)))
Outputs
(cbrt.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)))
(cbrt.f64 (/.f64 g (*.f64 a #s(literal 2 binary64))))
Compiler

Compiled 6 to 6 computations (0% 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
1.0MiB live, 1.0MiB allocated; 0ms collecting garbage
Alt Table
Click to see full alt table
StatusAccuracyProgram
79.7%
(cbrt.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)))
Compiler

Compiled 6 to 6 computations (0% saved)

simplify101.0ms (3.3%)

Memory
-2.7MiB live, 136.0MiB allocated; 20ms collecting garbage
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 #s(literal 2 binary64) a)
cost-diff0
(/.f64 g (*.f64 #s(literal 2 binary64) a))
cost-diff0
(cbrt.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0617
0917
11517
22417
34417
48917
531417
6201517
0818917
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(cbrt.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)))
(/.f64 g (*.f64 #s(literal 2 binary64) a))
g
(*.f64 #s(literal 2 binary64) a)
#s(literal 2 binary64)
a
Outputs
(cbrt.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)))
(cbrt.f64 (/.f64 g (*.f64 a #s(literal 2 binary64))))
(/.f64 g (*.f64 #s(literal 2 binary64) a))
(/.f64 g (*.f64 a #s(literal 2 binary64)))
g
(*.f64 #s(literal 2 binary64) a)
(*.f64 a #s(literal 2 binary64))
#s(literal 2 binary64)
a

localize31.0ms (1%)

Memory
-3.3MiB live, 48.4MiB allocated; 8ms collecting garbage
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(/.f64 g (*.f64 #s(literal 2 binary64) a))
accuracy0.0
(*.f64 #s(literal 2 binary64) a)
accuracy12.98362785815674
(cbrt.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)))
Samples
26.0ms256×0valid
Compiler

Compiled 19 to 8 computations (57.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 10.0ms
ival-div: 6.0ms (59% of total)
ival-mult: 2.0ms (19.7% of total)
ival-cbrt: 2.0ms (19.7% of total)
ival-true: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series27.0ms (0.9%)

Memory
5.4MiB live, 50.3MiB allocated; 7ms collecting garbage
Counts
3 → 5
Calls
Call 1
Inputs
(cbrt.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)))
(/.f64 g (*.f64 #s(literal 2 binary64) a))
(*.f64 #s(literal 2 binary64) a)
Outputs
#s(approx (cbrt (/ g (* 2 a))) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (/ g (* 2 a)) #s(hole binary64 (* 1/2 (/ g a))))
#s(approx (cbrt (/ g (* 2 a))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1/2)))))
#s(approx (* 2 a) #s(hole binary64 (* 2 a)))
#s(approx (cbrt (/ g (* 2 a))) #s(hole binary64 (* (cbrt (/ g a)) (* (cbrt -1) (cbrt -1/2)))))
Calls

6 calls:

TimeVariablePointExpression
8.0ms
g
@inf
((cbrt (/ g (* 2 a))) (/ g (* 2 a)) (* 2 a))
5.0ms
g
@-inf
((cbrt (/ g (* 2 a))) (/ g (* 2 a)) (* 2 a))
4.0ms
g
@0
((cbrt (/ g (* 2 a))) (/ g (* 2 a)) (* 2 a))
4.0ms
a
@inf
((cbrt (/ g (* 2 a))) (/ g (* 2 a)) (* 2 a))
3.0ms
a
@0
((cbrt (/ g (* 2 a))) (/ g (* 2 a)) (* 2 a))

simplify122.0ms (4%)

Memory
-25.4MiB live, 114.9MiB allocated; 24ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02562
14462
27162
39362
415862
549462
6337462
0846762
Stop Event
iter limit
node limit
Counts
5 → 5
Calls
Call 1
Inputs
#s(approx (cbrt (/ g (* 2 a))) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (/ g (* 2 a)) #s(hole binary64 (* 1/2 (/ g a))))
#s(approx (cbrt (/ g (* 2 a))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1/2)))))
#s(approx (* 2 a) #s(hole binary64 (* 2 a)))
#s(approx (cbrt (/ g (* 2 a))) #s(hole binary64 (* (cbrt (/ g a)) (* (cbrt -1) (cbrt -1/2)))))
Outputs
#s(approx (cbrt (/ g (* 2 a))) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (cbrt (/ g (* 2 a))) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 (/.f64 g a))))
#s(approx (/ g (* 2 a)) #s(hole binary64 (* 1/2 (/ g a))))
#s(approx (/ g (* 2 a)) (/.f64 g (*.f64 #s(literal 2 binary64) a)))
#s(approx (cbrt (/ g (* 2 a))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1/2)))))
#s(approx (cbrt (/ g (* 2 a))) (*.f64 (neg.f64 (cbrt.f64 #s(literal -1/2 binary64))) (cbrt.f64 (/.f64 g a))))
#s(approx (* 2 a) #s(hole binary64 (* 2 a)))
#s(approx (* 2 a) (*.f64 #s(literal 2 binary64) a))
#s(approx (cbrt (/ g (* 2 a))) #s(hole binary64 (* (cbrt (/ g a)) (* (cbrt -1) (cbrt -1/2)))))
#s(approx (cbrt (/ g (* 2 a))) (*.f64 (neg.f64 (cbrt.f64 #s(literal -1/2 binary64))) (cbrt.f64 (/.f64 g a))))

rewrite32.0ms (1%)

Memory
2.5MiB live, 48.0MiB allocated; 6ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0614
0914
12314
08714
Stop Event
iter limit
iter limit
iter limit
unsound
iter limit
Counts
3 → 25
Calls
Call 1
Inputs
(cbrt.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)))
(/.f64 g (*.f64 #s(literal 2 binary64) a))
(*.f64 #s(literal 2 binary64) a)
Outputs
(*.f64 (pow.f64 (/.f64 g (*.f64 a #s(literal 2 binary64))) #s(literal 1/6 binary64)) (pow.f64 (/.f64 g (*.f64 a #s(literal 2 binary64))) #s(literal 1/6 binary64)))
(pow.f64 (/.f64 g (*.f64 a #s(literal 2 binary64))) #s(literal 1/3 binary64))
(/.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 (*.f64 a #s(literal 2 binary64)))))
(/.f64 (cbrt.f64 (/.f64 g #s(literal 2 binary64))) (cbrt.f64 a))
(/.f64 (cbrt.f64 (neg.f64 g)) (cbrt.f64 (*.f64 #s(literal -2 binary64) a)))
(/.f64 (cbrt.f64 g) (cbrt.f64 (*.f64 a #s(literal 2 binary64))))
(cbrt.f64 (/.f64 g (*.f64 a #s(literal 2 binary64))))
(exp.f64 (*.f64 (log.f64 (/.f64 g (*.f64 a #s(literal 2 binary64)))) #s(literal 1/3 binary64)))
(/.f64 (/.f64 g a) #s(literal 2 binary64))
(/.f64 (neg.f64 (/.f64 g #s(literal 2 binary64))) (neg.f64 a))
(/.f64 (neg.f64 (neg.f64 g)) (neg.f64 (*.f64 #s(literal -2 binary64) a)))
(/.f64 (/.f64 g #s(literal 2 binary64)) a)
(/.f64 (neg.f64 g) (*.f64 #s(literal -2 binary64) a))
(/.f64 g (*.f64 a #s(literal 2 binary64)))
(neg.f64 (/.f64 (neg.f64 g) (*.f64 a #s(literal 2 binary64))))
(neg.f64 (/.f64 g (*.f64 #s(literal -2 binary64) a)))
(*.f64 a #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) a)
(/.f64 (-.f64 (*.f64 a a) (*.f64 a a)) (-.f64 a a))
(/.f64 (+.f64 (pow.f64 a #s(literal 3 binary64)) (pow.f64 a #s(literal 3 binary64))) (fma.f64 a a (-.f64 (*.f64 a a) (*.f64 a a))))
(fma.f64 #s(literal 1 binary64) a (*.f64 #s(literal 1 binary64) a))
(fma.f64 a #s(literal 1 binary64) (*.f64 a #s(literal 1 binary64)))
(+.f64 (*.f64 #s(literal 1 binary64) a) (*.f64 #s(literal 1 binary64) a))
(+.f64 (*.f64 a #s(literal 1 binary64)) (*.f64 a #s(literal 1 binary64)))
(+.f64 a a)

eval3.0ms (0.1%)

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

Compiled 267 to 104 computations (61% saved)

prune3.0ms (0.1%)

Memory
8.7MiB live, 8.7MiB allocated; 0ms collecting garbage
Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New24529
Fresh000
Picked101
Done000
Total25530
Accuracy
99.5%
Counts
30 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
42.5%
(pow.f64 (/.f64 g (*.f64 a #s(literal 2 binary64))) #s(literal 1/3 binary64))
98.7%
(/.f64 (cbrt.f64 (/.f64 g #s(literal 2 binary64))) (cbrt.f64 a))
98.7%
(/.f64 (cbrt.f64 g) (cbrt.f64 (*.f64 a #s(literal 2 binary64))))
79.7%
(cbrt.f64 (/.f64 g (+.f64 a a)))
79.6%
#s(approx (cbrt (/ g (* 2 a))) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 (/.f64 g a))))
Compiler

Compiled 82 to 76 computations (7.3% saved)

simplify103.0ms (3.3%)

Memory
18.4MiB live, 161.9MiB allocated; 18ms collecting garbage
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
cost-diff0
(cbrt.f64 a)
cost-diff0
(/.f64 g #s(literal 2 binary64))
cost-diff0
(cbrt.f64 (/.f64 g #s(literal 2 binary64)))
cost-diff0
(/.f64 (cbrt.f64 (/.f64 g #s(literal 2 binary64))) (cbrt.f64 a))
cost-diff0
(cbrt.f64 (/.f64 g a))
cost-diff0
(cbrt.f64 #s(literal 1/2 binary64))
cost-diff0
(*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 (/.f64 g a)))
cost-diff0
#s(approx (cbrt (/ g (* 2 a))) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 (/.f64 g a))))
cost-diff0
(*.f64 a #s(literal 2 binary64))
cost-diff0
(/.f64 g (*.f64 a #s(literal 2 binary64)))
cost-diffInfinite
(pow.f64 (/.f64 g (*.f64 a #s(literal 2 binary64))) #s(literal 1/3 binary64))
cost-diff0
(+.f64 a a)
cost-diff0
(/.f64 g (+.f64 a a))
cost-diff0
(cbrt.f64 (/.f64 g (+.f64 a a)))
cost-diff0
(*.f64 a #s(literal 2 binary64))
cost-diff0
(cbrt.f64 (*.f64 a #s(literal 2 binary64)))
cost-diff0
(cbrt.f64 g)
cost-diff0
(/.f64 (cbrt.f64 g) (cbrt.f64 (*.f64 a #s(literal 2 binary64))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
026106
043105
150105
257105
377105
4122105
5343105
62041105
08198105
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(/.f64 (cbrt.f64 g) (cbrt.f64 (*.f64 a #s(literal 2 binary64))))
(cbrt.f64 g)
g
(cbrt.f64 (*.f64 a #s(literal 2 binary64)))
(*.f64 a #s(literal 2 binary64))
a
#s(literal 2 binary64)
(cbrt.f64 (/.f64 g (+.f64 a a)))
(/.f64 g (+.f64 a a))
g
(+.f64 a a)
a
(pow.f64 (/.f64 g (*.f64 a #s(literal 2 binary64))) #s(literal 1/3 binary64))
(/.f64 g (*.f64 a #s(literal 2 binary64)))
g
(*.f64 a #s(literal 2 binary64))
a
#s(literal 2 binary64)
#s(literal 1/3 binary64)
#s(approx (cbrt (/ g (* 2 a))) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 (/.f64 g a))))
(*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 (/.f64 g a)))
(cbrt.f64 #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(cbrt.f64 (/.f64 g a))
(/.f64 g a)
g
a
(/.f64 (cbrt.f64 (/.f64 g #s(literal 2 binary64))) (cbrt.f64 a))
(cbrt.f64 (/.f64 g #s(literal 2 binary64)))
(/.f64 g #s(literal 2 binary64))
g
#s(literal 2 binary64)
(cbrt.f64 a)
a
Outputs
(/.f64 (cbrt.f64 g) (cbrt.f64 (*.f64 a #s(literal 2 binary64))))
(/.f64 (cbrt.f64 g) (cbrt.f64 (*.f64 #s(literal 2 binary64) a)))
(cbrt.f64 g)
g
(cbrt.f64 (*.f64 a #s(literal 2 binary64)))
(cbrt.f64 (*.f64 #s(literal 2 binary64) a))
(*.f64 a #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) a)
a
#s(literal 2 binary64)
(cbrt.f64 (/.f64 g (+.f64 a a)))
(cbrt.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)))
(/.f64 g (+.f64 a a))
(/.f64 g (*.f64 #s(literal 2 binary64) a))
g
(+.f64 a a)
(*.f64 #s(literal 2 binary64) a)
a
(pow.f64 (/.f64 g (*.f64 a #s(literal 2 binary64))) #s(literal 1/3 binary64))
(cbrt.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)))
(/.f64 g (*.f64 a #s(literal 2 binary64)))
(/.f64 g (*.f64 #s(literal 2 binary64) a))
g
(*.f64 a #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) a)
a
#s(literal 2 binary64)
#s(literal 1/3 binary64)
#s(approx (cbrt (/ g (* 2 a))) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 (/.f64 g a))))
#s(approx (cbrt (/ g (* 2 a))) (*.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 1/2 binary64))))
(*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 (/.f64 g a)))
(*.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 1/2 binary64)))
(cbrt.f64 #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(cbrt.f64 (/.f64 g a))
(/.f64 g a)
g
a
(/.f64 (cbrt.f64 (/.f64 g #s(literal 2 binary64))) (cbrt.f64 a))
(cbrt.f64 (/.f64 g #s(literal 2 binary64)))
(/.f64 g #s(literal 2 binary64))
g
#s(literal 2 binary64)
(cbrt.f64 a)
a

localize117.0ms (3.8%)

Memory
21.9MiB live, 187.6MiB allocated; 56ms collecting garbage
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(/.f64 g #s(literal 2 binary64))
accuracy0.3717575195368841
(/.f64 (cbrt.f64 (/.f64 g #s(literal 2 binary64))) (cbrt.f64 a))
accuracy0.5453301269897464
(cbrt.f64 a)
accuracy0.6059151856003986
(cbrt.f64 (/.f64 g #s(literal 2 binary64)))
accuracy0.0
(cbrt.f64 #s(literal 1/2 binary64))
accuracy0.0
#s(approx (cbrt (/ g (* 2 a))) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 (/.f64 g a))))
accuracy0.5013275390737681
(*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 (/.f64 g a)))
accuracy12.963798543693105
(cbrt.f64 (/.f64 g a))
accuracy0.0
(/.f64 g (*.f64 a #s(literal 2 binary64)))
accuracy0.0
(*.f64 a #s(literal 2 binary64))
accuracy36.66235530249645
(pow.f64 (/.f64 g (*.f64 a #s(literal 2 binary64))) #s(literal 1/3 binary64))
accuracy0.0
(/.f64 g (+.f64 a a))
accuracy0.0
(+.f64 a a)
accuracy12.98362785815674
(cbrt.f64 (/.f64 g (+.f64 a a)))
accuracy0.0
(*.f64 a #s(literal 2 binary64))
accuracy0.37109375
(/.f64 (cbrt.f64 g) (cbrt.f64 (*.f64 a #s(literal 2 binary64))))
accuracy0.5358963867581884
(cbrt.f64 g)
accuracy0.6322250976844204
(cbrt.f64 (*.f64 a #s(literal 2 binary64)))
Samples
97.0ms256×0valid
Compiler

Compiled 100 to 27 computations (73% saved)

Precisions
Click to see histograms. Total time spent on operations: 82.0ms
ival-add: 30.0ms (36.5% of total)
ival-div: 24.0ms (29.2% of total)
ival-cbrt: 12.0ms (14.6% of total)
const: 10.0ms (12.2% of total)
ival-mult: 5.0ms (6.1% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series163.0ms (5.3%)

Memory
-10.5MiB live, 204.6MiB allocated; 116ms collecting garbage
Counts
17 → 33
Calls
Call 1
Inputs
(/.f64 (cbrt.f64 g) (cbrt.f64 (*.f64 a #s(literal 2 binary64))))
(cbrt.f64 g)
(cbrt.f64 (*.f64 a #s(literal 2 binary64)))
(*.f64 a #s(literal 2 binary64))
(cbrt.f64 (/.f64 g (+.f64 a a)))
(/.f64 g (+.f64 a a))
(+.f64 a a)
(pow.f64 (/.f64 g (*.f64 a #s(literal 2 binary64))) #s(literal 1/3 binary64))
(/.f64 g (*.f64 a #s(literal 2 binary64)))
#s(approx (cbrt (/ g (* 2 a))) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 (/.f64 g a))))
(*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 (/.f64 g a)))
(cbrt.f64 #s(literal 1/2 binary64))
(cbrt.f64 (/.f64 g a))
(/.f64 (cbrt.f64 (/.f64 g #s(literal 2 binary64))) (cbrt.f64 a))
(cbrt.f64 (/.f64 g #s(literal 2 binary64)))
(/.f64 g #s(literal 2 binary64))
(cbrt.f64 a)
Outputs
#s(approx (/ (cbrt g) (cbrt (* a 2))) #s(hole binary64 (* (cbrt (/ g a)) (/ 1 (cbrt 2)))))
#s(approx (cbrt g) #s(hole binary64 (cbrt g)))
#s(approx (cbrt (/ g (+ a a))) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (/ g (+ a a)) #s(hole binary64 (* 1/2 (/ g a))))
#s(approx (pow (/ g (* a 2)) 1/3) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (/ g (* a 2)) #s(hole binary64 (* 1/2 (/ g a))))
#s(approx (cbrt (/ g (* 2 a))) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (* (cbrt 1/2) (cbrt (/ g a))) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (cbrt (/ g a)) #s(hole binary64 (cbrt (/ g a))))
#s(approx (/ (cbrt (/ g 2)) (cbrt a)) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (cbrt (/ g 2)) #s(hole binary64 (* (cbrt g) (cbrt 1/2))))
#s(approx (/ g 2) #s(hole binary64 (* 1/2 g)))
#s(approx (/ (cbrt g) (cbrt (* a 2))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt 2))))))
#s(approx (cbrt g) #s(hole binary64 (* -1 (* (cbrt g) (cbrt -1)))))
#s(approx (cbrt (/ g (+ a a))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1/2)))))
#s(approx (pow (/ g (* a 2)) 1/3) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1/2)))))
#s(approx (cbrt (/ g (* 2 a))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1/2)))))
#s(approx (* (cbrt 1/2) (cbrt (/ g a))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (* (cbrt -1) (cbrt 1/2))))))
#s(approx (cbrt (/ g a)) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1)))))
#s(approx (/ (cbrt (/ g 2)) (cbrt a)) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1/2)))))
#s(approx (cbrt (/ g 2)) #s(hole binary64 (* -1 (* (cbrt g) (cbrt -1/2)))))
#s(approx (cbrt (* a 2)) #s(hole binary64 (* (cbrt a) (cbrt 2))))
#s(approx (* a 2) #s(hole binary64 (* 2 a)))
#s(approx (+ a a) #s(hole binary64 (* 2 a)))
#s(approx (cbrt a) #s(hole binary64 (cbrt a)))
#s(approx (/ (cbrt g) (cbrt (* a 2))) #s(hole binary64 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt -2)))))
#s(approx (cbrt (* a 2)) #s(hole binary64 (* -1 (* (cbrt a) (cbrt -2)))))
#s(approx (cbrt (/ g (+ a a))) #s(hole binary64 (* (cbrt (/ g a)) (* (cbrt -1) (cbrt -1/2)))))
#s(approx (pow (/ g (* a 2)) 1/3) #s(hole binary64 (* (cbrt (/ g a)) (* (cbrt -1) (cbrt -1/2)))))
#s(approx (cbrt (/ g (* 2 a))) #s(hole binary64 (* (cbrt (/ g a)) (* (cbrt -1) (cbrt -1/2)))))
#s(approx (* (cbrt 1/2) (cbrt (/ g a))) #s(hole binary64 (* (cbrt (/ g a)) (* (pow (cbrt -1) 2) (cbrt 1/2)))))
#s(approx (cbrt (/ g a)) #s(hole binary64 (* (cbrt (/ g a)) (pow (cbrt -1) 2))))
#s(approx (cbrt a) #s(hole binary64 (* -1 (* (cbrt a) (cbrt -1)))))
Calls

6 calls:

TimeVariablePointExpression
59.0ms
a
@inf
((/ (cbrt g) (cbrt (* a 2))) (cbrt g) (cbrt (* a 2)) (* a 2) (cbrt (/ g (+ a a))) (/ g (+ a a)) (+ a a) (pow (/ g (* a 2)) 1/3) (/ g (* a 2)) (cbrt (/ g (* 2 a))) (* (cbrt 1/2) (cbrt (/ g a))) (cbrt 1/2) (cbrt (/ g a)) (/ (cbrt (/ g 2)) (cbrt a)) (cbrt (/ g 2)) (/ g 2) (cbrt a))
33.0ms
g
@0
((/ (cbrt g) (cbrt (* a 2))) (cbrt g) (cbrt (* a 2)) (* a 2) (cbrt (/ g (+ a a))) (/ g (+ a a)) (+ a a) (pow (/ g (* a 2)) 1/3) (/ g (* a 2)) (cbrt (/ g (* 2 a))) (* (cbrt 1/2) (cbrt (/ g a))) (cbrt 1/2) (cbrt (/ g a)) (/ (cbrt (/ g 2)) (cbrt a)) (cbrt (/ g 2)) (/ g 2) (cbrt a))
22.0ms
a
@-inf
((/ (cbrt g) (cbrt (* a 2))) (cbrt g) (cbrt (* a 2)) (* a 2) (cbrt (/ g (+ a a))) (/ g (+ a a)) (+ a a) (pow (/ g (* a 2)) 1/3) (/ g (* a 2)) (cbrt (/ g (* 2 a))) (* (cbrt 1/2) (cbrt (/ g a))) (cbrt 1/2) (cbrt (/ g a)) (/ (cbrt (/ g 2)) (cbrt a)) (cbrt (/ g 2)) (/ g 2) (cbrt a))
19.0ms
g
@inf
((/ (cbrt g) (cbrt (* a 2))) (cbrt g) (cbrt (* a 2)) (* a 2) (cbrt (/ g (+ a a))) (/ g (+ a a)) (+ a a) (pow (/ g (* a 2)) 1/3) (/ g (* a 2)) (cbrt (/ g (* 2 a))) (* (cbrt 1/2) (cbrt (/ g a))) (cbrt 1/2) (cbrt (/ g a)) (/ (cbrt (/ g 2)) (cbrt a)) (cbrt (/ g 2)) (/ g 2) (cbrt a))
18.0ms
a
@0
((/ (cbrt g) (cbrt (* a 2))) (cbrt g) (cbrt (* a 2)) (* a 2) (cbrt (/ g (+ a a))) (/ g (+ a a)) (+ a a) (pow (/ g (* a 2)) 1/3) (/ g (* a 2)) (cbrt (/ g (* 2 a))) (* (cbrt 1/2) (cbrt (/ g a))) (cbrt 1/2) (cbrt (/ g a)) (/ (cbrt (/ g 2)) (cbrt a)) (cbrt (/ g 2)) (/ g 2) (cbrt a))

simplify107.0ms (3.5%)

Memory
44.5MiB live, 129.1MiB allocated; 20ms collecting garbage
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
099392
1166388
2287388
3519388
41677388
55749386
08148386
Stop Event
iter limit
node limit
Counts
33 → 33
Calls
Call 1
Inputs
#s(approx (/ (cbrt g) (cbrt (* a 2))) #s(hole binary64 (* (cbrt (/ g a)) (/ 1 (cbrt 2)))))
#s(approx (cbrt g) #s(hole binary64 (cbrt g)))
#s(approx (cbrt (/ g (+ a a))) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (/ g (+ a a)) #s(hole binary64 (* 1/2 (/ g a))))
#s(approx (pow (/ g (* a 2)) 1/3) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (/ g (* a 2)) #s(hole binary64 (* 1/2 (/ g a))))
#s(approx (cbrt (/ g (* 2 a))) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (* (cbrt 1/2) (cbrt (/ g a))) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (cbrt (/ g a)) #s(hole binary64 (cbrt (/ g a))))
#s(approx (/ (cbrt (/ g 2)) (cbrt a)) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (cbrt (/ g 2)) #s(hole binary64 (* (cbrt g) (cbrt 1/2))))
#s(approx (/ g 2) #s(hole binary64 (* 1/2 g)))
#s(approx (/ (cbrt g) (cbrt (* a 2))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt 2))))))
#s(approx (cbrt g) #s(hole binary64 (* -1 (* (cbrt g) (cbrt -1)))))
#s(approx (cbrt (/ g (+ a a))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1/2)))))
#s(approx (pow (/ g (* a 2)) 1/3) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1/2)))))
#s(approx (cbrt (/ g (* 2 a))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1/2)))))
#s(approx (* (cbrt 1/2) (cbrt (/ g a))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (* (cbrt -1) (cbrt 1/2))))))
#s(approx (cbrt (/ g a)) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1)))))
#s(approx (/ (cbrt (/ g 2)) (cbrt a)) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1/2)))))
#s(approx (cbrt (/ g 2)) #s(hole binary64 (* -1 (* (cbrt g) (cbrt -1/2)))))
#s(approx (cbrt (* a 2)) #s(hole binary64 (* (cbrt a) (cbrt 2))))
#s(approx (* a 2) #s(hole binary64 (* 2 a)))
#s(approx (+ a a) #s(hole binary64 (* 2 a)))
#s(approx (cbrt a) #s(hole binary64 (cbrt a)))
#s(approx (/ (cbrt g) (cbrt (* a 2))) #s(hole binary64 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt -2)))))
#s(approx (cbrt (* a 2)) #s(hole binary64 (* -1 (* (cbrt a) (cbrt -2)))))
#s(approx (cbrt (/ g (+ a a))) #s(hole binary64 (* (cbrt (/ g a)) (* (cbrt -1) (cbrt -1/2)))))
#s(approx (pow (/ g (* a 2)) 1/3) #s(hole binary64 (* (cbrt (/ g a)) (* (cbrt -1) (cbrt -1/2)))))
#s(approx (cbrt (/ g (* 2 a))) #s(hole binary64 (* (cbrt (/ g a)) (* (cbrt -1) (cbrt -1/2)))))
#s(approx (* (cbrt 1/2) (cbrt (/ g a))) #s(hole binary64 (* (cbrt (/ g a)) (* (pow (cbrt -1) 2) (cbrt 1/2)))))
#s(approx (cbrt (/ g a)) #s(hole binary64 (* (cbrt (/ g a)) (pow (cbrt -1) 2))))
#s(approx (cbrt a) #s(hole binary64 (* -1 (* (cbrt a) (cbrt -1)))))
Outputs
#s(approx (/ (cbrt g) (cbrt (* a 2))) #s(hole binary64 (* (cbrt (/ g a)) (/ 1 (cbrt 2)))))
#s(approx (/ (cbrt g) (cbrt (* a 2))) (/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64))))
#s(approx (cbrt g) #s(hole binary64 (cbrt g)))
#s(approx (cbrt g) (cbrt.f64 g))
#s(approx (cbrt (/ g (+ a a))) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (pow (/ g (* a 2)) 1/3) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 (/.f64 g a))))
#s(approx (/ g (+ a a)) #s(hole binary64 (* 1/2 (/ g a))))
#s(approx (/ g (* a 2)) (*.f64 #s(literal 1/2 binary64) (/.f64 g a)))
#s(approx (pow (/ g (* a 2)) 1/3) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (pow (/ g (* a 2)) 1/3) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 (/.f64 g a))))
#s(approx (/ g (* a 2)) #s(hole binary64 (* 1/2 (/ g a))))
#s(approx (/ g (* a 2)) (*.f64 #s(literal 1/2 binary64) (/.f64 g a)))
#s(approx (cbrt (/ g (* 2 a))) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (pow (/ g (* a 2)) 1/3) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 (/.f64 g a))))
#s(approx (* (cbrt 1/2) (cbrt (/ g a))) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (* (cbrt 1/2) (cbrt (/ g a))) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 (/.f64 g a))))
#s(approx (cbrt (/ g a)) #s(hole binary64 (cbrt (/ g a))))
#s(approx (cbrt (/ g a)) (cbrt.f64 (/.f64 g a)))
#s(approx (/ (cbrt (/ g 2)) (cbrt a)) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (/ (cbrt (/ g 2)) (cbrt a)) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 (/.f64 g a))))
#s(approx (cbrt (/ g 2)) #s(hole binary64 (* (cbrt g) (cbrt 1/2))))
#s(approx (cbrt (/ g 2)) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 g)))
#s(approx (/ g 2) #s(hole binary64 (* 1/2 g)))
#s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))
#s(approx (/ (cbrt g) (cbrt (* a 2))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt 2))))))
#s(approx (/ (cbrt g) (cbrt (* a 2))) (/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64))))
#s(approx (cbrt g) #s(hole binary64 (* -1 (* (cbrt g) (cbrt -1)))))
#s(approx (cbrt g) (cbrt.f64 g))
#s(approx (cbrt (/ g (+ a a))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1/2)))))
#s(approx (pow (/ g (* a 2)) 1/3) (*.f64 (neg.f64 (cbrt.f64 #s(literal -1/2 binary64))) (cbrt.f64 (/.f64 g a))))
#s(approx (pow (/ g (* a 2)) 1/3) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1/2)))))
#s(approx (pow (/ g (* a 2)) 1/3) (*.f64 (neg.f64 (cbrt.f64 #s(literal -1/2 binary64))) (cbrt.f64 (/.f64 g a))))
#s(approx (cbrt (/ g (* 2 a))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1/2)))))
#s(approx (pow (/ g (* a 2)) 1/3) (*.f64 (neg.f64 (cbrt.f64 #s(literal -1/2 binary64))) (cbrt.f64 (/.f64 g a))))
#s(approx (* (cbrt 1/2) (cbrt (/ g a))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (* (cbrt -1) (cbrt 1/2))))))
#s(approx (* (cbrt 1/2) (cbrt (/ g a))) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 (/.f64 g a))))
#s(approx (cbrt (/ g a)) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1)))))
#s(approx (cbrt (/ g a)) (cbrt.f64 (/.f64 g a)))
#s(approx (/ (cbrt (/ g 2)) (cbrt a)) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1/2)))))
#s(approx (/ (cbrt (/ g 2)) (cbrt a)) (*.f64 (neg.f64 (cbrt.f64 #s(literal -1/2 binary64))) (cbrt.f64 (/.f64 g a))))
#s(approx (cbrt (/ g 2)) #s(hole binary64 (* -1 (* (cbrt g) (cbrt -1/2)))))
#s(approx (cbrt (/ g 2)) (*.f64 (cbrt.f64 #s(literal -1/2 binary64)) (neg.f64 (cbrt.f64 g))))
#s(approx (cbrt (* a 2)) #s(hole binary64 (* (cbrt a) (cbrt 2))))
#s(approx (cbrt (* a 2)) (*.f64 (cbrt.f64 a) (cbrt.f64 #s(literal 2 binary64))))
#s(approx (* a 2) #s(hole binary64 (* 2 a)))
#s(approx (* a 2) (*.f64 #s(literal 2 binary64) a))
#s(approx (+ a a) #s(hole binary64 (* 2 a)))
#s(approx (* a 2) (*.f64 #s(literal 2 binary64) a))
#s(approx (cbrt a) #s(hole binary64 (cbrt a)))
#s(approx (cbrt a) (cbrt.f64 a))
#s(approx (/ (cbrt g) (cbrt (* a 2))) #s(hole binary64 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt -2)))))
#s(approx (/ (cbrt g) (cbrt (* a 2))) (neg.f64 (/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal -2 binary64)))))
#s(approx (cbrt (* a 2)) #s(hole binary64 (* -1 (* (cbrt a) (cbrt -2)))))
#s(approx (cbrt (* a 2)) (*.f64 (neg.f64 (cbrt.f64 #s(literal -2 binary64))) (cbrt.f64 a)))
#s(approx (cbrt (/ g (+ a a))) #s(hole binary64 (* (cbrt (/ g a)) (* (cbrt -1) (cbrt -1/2)))))
#s(approx (pow (/ g (* a 2)) 1/3) (*.f64 (neg.f64 (cbrt.f64 #s(literal -1/2 binary64))) (cbrt.f64 (/.f64 g a))))
#s(approx (pow (/ g (* a 2)) 1/3) #s(hole binary64 (* (cbrt (/ g a)) (* (cbrt -1) (cbrt -1/2)))))
#s(approx (pow (/ g (* a 2)) 1/3) (*.f64 (neg.f64 (cbrt.f64 #s(literal -1/2 binary64))) (cbrt.f64 (/.f64 g a))))
#s(approx (cbrt (/ g (* 2 a))) #s(hole binary64 (* (cbrt (/ g a)) (* (cbrt -1) (cbrt -1/2)))))
#s(approx (pow (/ g (* a 2)) 1/3) (*.f64 (neg.f64 (cbrt.f64 #s(literal -1/2 binary64))) (cbrt.f64 (/.f64 g a))))
#s(approx (* (cbrt 1/2) (cbrt (/ g a))) #s(hole binary64 (* (cbrt (/ g a)) (* (pow (cbrt -1) 2) (cbrt 1/2)))))
#s(approx (* (cbrt 1/2) (cbrt (/ g a))) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 (/.f64 g a))))
#s(approx (cbrt (/ g a)) #s(hole binary64 (* (cbrt (/ g a)) (pow (cbrt -1) 2))))
#s(approx (cbrt (/ g a)) (cbrt.f64 (/.f64 g a)))
#s(approx (cbrt a) #s(hole binary64 (* -1 (* (cbrt a) (cbrt -1)))))
#s(approx (cbrt a) (cbrt.f64 a))

rewrite44.0ms (1.4%)

Memory
-10.5MiB live, 43.2MiB allocated; 26ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02685
04380
010580
Stop Event
iter limit
iter limit
iter limit
unsound
iter limit
Counts
17 → 71
Calls
Call 1
Inputs
(/.f64 (cbrt.f64 g) (cbrt.f64 (*.f64 a #s(literal 2 binary64))))
(cbrt.f64 g)
(cbrt.f64 (*.f64 a #s(literal 2 binary64)))
(*.f64 a #s(literal 2 binary64))
(cbrt.f64 (/.f64 g (+.f64 a a)))
(/.f64 g (+.f64 a a))
(+.f64 a a)
(pow.f64 (/.f64 g (*.f64 a #s(literal 2 binary64))) #s(literal 1/3 binary64))
(/.f64 g (*.f64 a #s(literal 2 binary64)))
#s(approx (cbrt (/ g (* 2 a))) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 (/.f64 g a))))
(*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 (/.f64 g a)))
(cbrt.f64 #s(literal 1/2 binary64))
(cbrt.f64 (/.f64 g a))
(/.f64 (cbrt.f64 (/.f64 g #s(literal 2 binary64))) (cbrt.f64 a))
(cbrt.f64 (/.f64 g #s(literal 2 binary64)))
(/.f64 g #s(literal 2 binary64))
(cbrt.f64 a)
Outputs
(*.f64 (pow.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)) #s(literal 1/6 binary64)) (pow.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)) #s(literal 1/6 binary64)))
(pow.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)) #s(literal 1/3 binary64))
(/.f64 (neg.f64 (cbrt.f64 (/.f64 g #s(literal 2 binary64)))) (neg.f64 (cbrt.f64 a)))
(/.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 (*.f64 #s(literal 2 binary64) a))))
(/.f64 (cbrt.f64 (/.f64 g #s(literal 2 binary64))) (cbrt.f64 a))
(/.f64 (cbrt.f64 g) (cbrt.f64 (*.f64 #s(literal 2 binary64) a)))
(cbrt.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)))
(exp.f64 (*.f64 (log.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a))) #s(literal 1/3 binary64)))
(pow.f64 g #s(literal 1/3 binary64))
(cbrt.f64 g)
(*.f64 (cbrt.f64 a) (cbrt.f64 #s(literal 2 binary64)))
(pow.f64 (*.f64 #s(literal 2 binary64) a) #s(literal 1/3 binary64))
(cbrt.f64 (*.f64 #s(literal 2 binary64) a))
(*.f64 #s(literal 2 binary64) a)
(*.f64 a #s(literal 2 binary64))
(/.f64 (-.f64 (*.f64 a a) (*.f64 a a)) (-.f64 a a))
(/.f64 (+.f64 (pow.f64 a #s(literal 3 binary64)) (pow.f64 a #s(literal 3 binary64))) (fma.f64 a a (-.f64 (*.f64 a a) (*.f64 a a))))
(+.f64 a a)
(*.f64 (pow.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)) #s(literal 1/6 binary64)) (pow.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)) #s(literal 1/6 binary64)))
(pow.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)) #s(literal 1/3 binary64))
(/.f64 (neg.f64 (cbrt.f64 (/.f64 g #s(literal 2 binary64)))) (neg.f64 (cbrt.f64 a)))
(/.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 (*.f64 #s(literal 2 binary64) a))))
(/.f64 (cbrt.f64 (/.f64 g #s(literal 2 binary64))) (cbrt.f64 a))
(/.f64 (cbrt.f64 g) (cbrt.f64 (*.f64 #s(literal 2 binary64) a)))
(cbrt.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)))
(exp.f64 (*.f64 (log.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a))) #s(literal 1/3 binary64)))
(/.f64 (neg.f64 g) (neg.f64 (*.f64 #s(literal 2 binary64) a)))
(/.f64 (/.f64 g #s(literal 2 binary64)) a)
(/.f64 (/.f64 g a) #s(literal 2 binary64))
(/.f64 g (*.f64 #s(literal 2 binary64) a))
(*.f64 #s(literal 2 binary64) a)
(*.f64 a #s(literal 2 binary64))
(/.f64 (-.f64 (*.f64 a a) (*.f64 a a)) (-.f64 a a))
(/.f64 (+.f64 (pow.f64 a #s(literal 3 binary64)) (pow.f64 a #s(literal 3 binary64))) (fma.f64 a a (-.f64 (*.f64 a a) (*.f64 a a))))
(+.f64 a a)
(*.f64 (pow.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)) #s(literal 1/6 binary64)) (pow.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)) #s(literal 1/6 binary64)))
(pow.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)) #s(literal 1/3 binary64))
(/.f64 (neg.f64 (cbrt.f64 (/.f64 g #s(literal 2 binary64)))) (neg.f64 (cbrt.f64 a)))
(/.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 (*.f64 #s(literal 2 binary64) a))))
(/.f64 (cbrt.f64 (/.f64 g #s(literal 2 binary64))) (cbrt.f64 a))
(/.f64 (cbrt.f64 g) (cbrt.f64 (*.f64 #s(literal 2 binary64) a)))
(cbrt.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)))
(exp.f64 (*.f64 (log.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a))) #s(literal 1/3 binary64)))
(/.f64 (neg.f64 g) (neg.f64 (*.f64 #s(literal 2 binary64) a)))
(/.f64 (/.f64 g #s(literal 2 binary64)) a)
(/.f64 (/.f64 g a) #s(literal 2 binary64))
(/.f64 g (*.f64 #s(literal 2 binary64) a))
#s(approx (cbrt (/ g (* 2 a))) (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 g a))))
(*.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 1/2 binary64)))
(*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 (/.f64 g a)))
(cbrt.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 g a)))
(pow.f64 #s(literal 1/2 binary64) #s(literal 1/3 binary64))
(cbrt.f64 #s(literal 1/2 binary64))
(pow.f64 (/.f64 g a) #s(literal 1/3 binary64))
(/.f64 (cbrt.f64 g) (cbrt.f64 a))
(cbrt.f64 (/.f64 g a))
(*.f64 (pow.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)) #s(literal 1/6 binary64)) (pow.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)) #s(literal 1/6 binary64)))
(pow.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)) #s(literal 1/3 binary64))
(/.f64 (neg.f64 (cbrt.f64 (/.f64 g #s(literal 2 binary64)))) (neg.f64 (cbrt.f64 a)))
(/.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 (*.f64 #s(literal 2 binary64) a))))
(/.f64 (cbrt.f64 (/.f64 g #s(literal 2 binary64))) (cbrt.f64 a))
(/.f64 (cbrt.f64 g) (cbrt.f64 (*.f64 #s(literal 2 binary64) a)))
(cbrt.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)))
(exp.f64 (*.f64 (log.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a))) #s(literal 1/3 binary64)))
(pow.f64 (/.f64 g #s(literal 2 binary64)) #s(literal 1/3 binary64))
(/.f64 (cbrt.f64 g) (cbrt.f64 #s(literal 2 binary64)))
(cbrt.f64 (/.f64 g #s(literal 2 binary64)))
(/.f64 (neg.f64 g) #s(literal -2 binary64))
(/.f64 g #s(literal 2 binary64))
(pow.f64 a #s(literal 1/3 binary64))
(cbrt.f64 a)

eval9.0ms (0.3%)

Memory
-30.4MiB live, 19.4MiB allocated; 2ms collecting garbage
Compiler

Compiled 682 to 165 computations (75.8% saved)

prune6.0ms (0.2%)

Memory
17.4MiB live, 17.4MiB allocated; 0ms collecting garbage
Pruning

11 alts after pruning (9 fresh and 2 done)

PrunedKeptTotal
New52961
Fresh000
Picked325
Done000
Total551166
Accuracy
99.8%
Counts
66 → 11
Alt Table
Click to see full alt table
StatusAccuracyProgram
42.5%
(pow.f64 (/.f64 g (+.f64 a a)) #s(literal 1/3 binary64))
98.2%
(/.f64 (/.f64 (cbrt.f64 g) (cbrt.f64 #s(literal 2 binary64))) (cbrt.f64 a))
98.7%
(/.f64 (cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))) (cbrt.f64 a))
43.9%
(/.f64 (cbrt.f64 g) (pow.f64 (*.f64 #s(literal 2 binary64) a) #s(literal 1/3 binary64)))
98.2%
(/.f64 (cbrt.f64 g) (*.f64 (cbrt.f64 a) (cbrt.f64 #s(literal 2 binary64))))
98.7%
(/.f64 (cbrt.f64 g) (cbrt.f64 (+.f64 a a)))
98.7%
(/.f64 #s(approx (cbrt (/ g 2)) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 g))) (cbrt.f64 a))
79.7%
(cbrt.f64 (/.f64 g (+.f64 a a)))
79.0%
#s(approx (/ (cbrt g) (cbrt (* a 2))) (/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64))))
98.7%
#s(approx (cbrt (/ g (* 2 a))) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (/.f64 (cbrt.f64 g) (cbrt.f64 a))))
79.6%
#s(approx (cbrt (/ g (* 2 a))) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 (/.f64 g a))))
Compiler

Compiled 204 to 185 computations (9.3% saved)

simplify101.0ms (3.3%)

Memory
1.2MiB live, 143.8MiB allocated; 9ms collecting garbage
Localize:

Found 19 expressions of interest:

NewMetricScoreProgram
cost-diff0
(cbrt.f64 a)
cost-diff0
(*.f64 (cbrt.f64 a) (cbrt.f64 #s(literal 2 binary64)))
cost-diff0
(cbrt.f64 g)
cost-diff0
(/.f64 (cbrt.f64 g) (*.f64 (cbrt.f64 a) (cbrt.f64 #s(literal 2 binary64))))
cost-diff0
(/.f64 g a)
cost-diff0
(cbrt.f64 (/.f64 g a))
cost-diff0
(/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64)))
cost-diff0
#s(approx (/ (cbrt g) (cbrt (* a 2))) (/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64))))
cost-diff0
(*.f64 #s(literal 1/2 binary64) g)
cost-diff0
#s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))
cost-diff0
(cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g)))
cost-diff0
(/.f64 (cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))) (cbrt.f64 a))
cost-diff0
(+.f64 a a)
cost-diff0
(/.f64 g (+.f64 a a))
cost-diffInfinite
(pow.f64 (/.f64 g (+.f64 a a)) #s(literal 1/3 binary64))
cost-diff0
(/.f64 (cbrt.f64 g) (cbrt.f64 a))
cost-diff0
(cbrt.f64 #s(literal 1/2 binary64))
cost-diff0
(*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (/.f64 (cbrt.f64 g) (cbrt.f64 a)))
cost-diff0
#s(approx (cbrt (/ g (* 2 a))) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (/.f64 (cbrt.f64 g) (cbrt.f64 a))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
033145
050144
161144
273144
395144
4140144
5364144
62085144
08079144
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
#s(approx (cbrt (/ g (* 2 a))) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (/.f64 (cbrt.f64 g) (cbrt.f64 a))))
(*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (/.f64 (cbrt.f64 g) (cbrt.f64 a)))
(cbrt.f64 #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(/.f64 (cbrt.f64 g) (cbrt.f64 a))
(cbrt.f64 g)
g
(cbrt.f64 a)
a
(pow.f64 (/.f64 g (+.f64 a a)) #s(literal 1/3 binary64))
(/.f64 g (+.f64 a a))
g
(+.f64 a a)
a
#s(literal 1/3 binary64)
(/.f64 (cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))) (cbrt.f64 a))
(cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g)))
#s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))
(*.f64 #s(literal 1/2 binary64) g)
#s(literal 1/2 binary64)
g
(cbrt.f64 a)
a
#s(approx (/ (cbrt g) (cbrt (* a 2))) (/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64))))
(/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64)))
(cbrt.f64 (/.f64 g a))
(/.f64 g a)
g
a
(cbrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
(/.f64 (cbrt.f64 g) (*.f64 (cbrt.f64 a) (cbrt.f64 #s(literal 2 binary64))))
(cbrt.f64 g)
g
(*.f64 (cbrt.f64 a) (cbrt.f64 #s(literal 2 binary64)))
(cbrt.f64 a)
a
(cbrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
Outputs
#s(approx (cbrt (/ g (* 2 a))) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (/.f64 (cbrt.f64 g) (cbrt.f64 a))))
#s(approx (cbrt (/ g (* 2 a))) (*.f64 (/.f64 (cbrt.f64 g) (cbrt.f64 a)) (cbrt.f64 #s(literal 1/2 binary64))))
(*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (/.f64 (cbrt.f64 g) (cbrt.f64 a)))
(*.f64 (/.f64 (cbrt.f64 g) (cbrt.f64 a)) (cbrt.f64 #s(literal 1/2 binary64)))
(cbrt.f64 #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(/.f64 (cbrt.f64 g) (cbrt.f64 a))
(cbrt.f64 g)
g
(cbrt.f64 a)
a
(pow.f64 (/.f64 g (+.f64 a a)) #s(literal 1/3 binary64))
(cbrt.f64 (/.f64 g (*.f64 a #s(literal 2 binary64))))
(/.f64 g (+.f64 a a))
(/.f64 g (*.f64 a #s(literal 2 binary64)))
g
(+.f64 a a)
(*.f64 a #s(literal 2 binary64))
a
#s(literal 1/3 binary64)
(/.f64 (cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))) (cbrt.f64 a))
(cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g)))
#s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))
(*.f64 #s(literal 1/2 binary64) g)
#s(literal 1/2 binary64)
g
(cbrt.f64 a)
a
#s(approx (/ (cbrt g) (cbrt (* a 2))) (/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64))))
(/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64)))
(cbrt.f64 (/.f64 g a))
(/.f64 g a)
g
a
(cbrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
(/.f64 (cbrt.f64 g) (*.f64 (cbrt.f64 a) (cbrt.f64 #s(literal 2 binary64))))
(/.f64 (/.f64 (cbrt.f64 g) (cbrt.f64 a)) (cbrt.f64 #s(literal 2 binary64)))
(cbrt.f64 g)
g
(*.f64 (cbrt.f64 a) (cbrt.f64 #s(literal 2 binary64)))
(*.f64 (cbrt.f64 #s(literal 2 binary64)) (cbrt.f64 a))
(cbrt.f64 a)
a
(cbrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)

localize76.0ms (2.5%)

Memory
11.9MiB live, 150.7MiB allocated; 9ms collecting garbage
Localize:

Found 19 expressions of interest:

NewMetricScoreProgram
accuracy0.37109375
(/.f64 (cbrt.f64 g) (*.f64 (cbrt.f64 a) (cbrt.f64 #s(literal 2 binary64))))
accuracy0.5358963867581884
(cbrt.f64 g)
accuracy0.5453301269897464
(cbrt.f64 a)
accuracy1.0
(cbrt.f64 #s(literal 2 binary64))
accuracy0.0
#s(approx (/ (cbrt g) (cbrt (* a 2))) (/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64))))
accuracy0.265625
(/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64)))
accuracy1.0
(cbrt.f64 #s(literal 2 binary64))
accuracy12.963798543693105
(cbrt.f64 (/.f64 g a))
accuracy0.0
#s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))
accuracy0.3717575195368841
(/.f64 (cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))) (cbrt.f64 a))
accuracy0.5453301269897464
(cbrt.f64 a)
accuracy0.6059151856003986
(cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g)))
accuracy0.0
(/.f64 g (+.f64 a a))
accuracy0.0
(+.f64 a a)
accuracy36.66235530249645
(pow.f64 (/.f64 g (+.f64 a a)) #s(literal 1/3 binary64))
accuracy0.3515625
(/.f64 (cbrt.f64 g) (cbrt.f64 a))
accuracy0.5013275390737681
(*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (/.f64 (cbrt.f64 g) (cbrt.f64 a)))
accuracy0.5358963867581884
(cbrt.f64 g)
accuracy0.5453301269897464
(cbrt.f64 a)
Samples
57.0ms256×0valid
Compiler

Compiled 118 to 31 computations (73.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 40.0ms
ival-div: 15.0ms (37.7% of total)
ival-cbrt: 11.0ms (27.6% of total)
ival-mult: 8.0ms (20.1% of total)
const: 3.0ms (7.5% of total)
ival-add: 1.0ms (2.5% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series177.0ms (5.7%)

Memory
-36.9MiB live, 134.5MiB allocated; 181ms collecting garbage
Counts
20 → 36
Calls
Call 1
Inputs
#s(approx (cbrt (/ g (* 2 a))) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (/.f64 (cbrt.f64 g) (cbrt.f64 a))))
(*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (/.f64 (cbrt.f64 g) (cbrt.f64 a)))
(cbrt.f64 #s(literal 1/2 binary64))
(/.f64 (cbrt.f64 g) (cbrt.f64 a))
(pow.f64 (/.f64 g (+.f64 a a)) #s(literal 1/3 binary64))
(/.f64 g (+.f64 a a))
(+.f64 a a)
(/.f64 (cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))) (cbrt.f64 a))
(cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g)))
#s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))
(*.f64 #s(literal 1/2 binary64) g)
#s(approx (/ (cbrt g) (cbrt (* a 2))) (/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64))))
(/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64)))
(cbrt.f64 (/.f64 g a))
(/.f64 g a)
(/.f64 (cbrt.f64 g) (*.f64 (cbrt.f64 a) (cbrt.f64 #s(literal 2 binary64))))
(cbrt.f64 g)
(*.f64 (cbrt.f64 a) (cbrt.f64 #s(literal 2 binary64)))
(cbrt.f64 a)
(cbrt.f64 #s(literal 2 binary64))
Outputs
#s(approx (cbrt (/ g (* 2 a))) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (* (cbrt 1/2) (/ (cbrt g) (cbrt a))) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (/ (cbrt g) (cbrt a)) #s(hole binary64 (cbrt (/ g a))))
#s(approx (pow (/ g (+ a a)) 1/3) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (/ g (+ a a)) #s(hole binary64 (* 1/2 (/ g a))))
#s(approx (/ (cbrt (/ g 2)) (cbrt a)) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (cbrt (/ g 2)) #s(hole binary64 (* (cbrt g) (cbrt 1/2))))
#s(approx (/ g 2) #s(hole binary64 (* 1/2 g)))
#s(approx (* 1/2 g) #s(hole binary64 (* 1/2 g)))
#s(approx (/ (cbrt g) (cbrt (* a 2))) #s(hole binary64 (* (cbrt (/ g a)) (/ 1 (cbrt 2)))))
#s(approx (/ (cbrt (/ g a)) (cbrt 2)) #s(hole binary64 (* (cbrt (/ g a)) (/ 1 (cbrt 2)))))
#s(approx (cbrt (/ g a)) #s(hole binary64 (cbrt (/ g a))))
#s(approx (/ g a) #s(hole binary64 (/ g a)))
#s(approx (/ (cbrt g) (* (cbrt a) (cbrt 2))) #s(hole binary64 (* (cbrt (/ g a)) (/ 1 (cbrt 2)))))
#s(approx (cbrt g) #s(hole binary64 (cbrt g)))
#s(approx (cbrt (/ g (* 2 a))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1/2)))))
#s(approx (* (cbrt 1/2) (/ (cbrt g) (cbrt a))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (* (cbrt -1) (cbrt 1/2))))))
#s(approx (/ (cbrt g) (cbrt a)) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1)))))
#s(approx (pow (/ g (+ a a)) 1/3) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1/2)))))
#s(approx (/ (cbrt (/ g 2)) (cbrt a)) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1/2)))))
#s(approx (cbrt (/ g 2)) #s(hole binary64 (* -1 (* (cbrt g) (cbrt -1/2)))))
#s(approx (/ (cbrt g) (cbrt (* a 2))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt 2))))))
#s(approx (/ (cbrt (/ g a)) (cbrt 2)) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt 2))))))
#s(approx (cbrt (/ g a)) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1)))))
#s(approx (/ (cbrt g) (* (cbrt a) (cbrt 2))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt 2))))))
#s(approx (cbrt g) #s(hole binary64 (* -1 (* (cbrt g) (cbrt -1)))))
#s(approx (+ a a) #s(hole binary64 (* 2 a)))
#s(approx (* (cbrt a) (cbrt 2)) #s(hole binary64 (* (cbrt a) (cbrt 2))))
#s(approx (cbrt a) #s(hole binary64 (cbrt a)))
#s(approx (cbrt (/ g (* 2 a))) #s(hole binary64 (* (cbrt (/ g a)) (* (cbrt -1) (cbrt -1/2)))))
#s(approx (pow (/ g (+ a a)) 1/3) #s(hole binary64 (* (cbrt (/ g a)) (* (cbrt -1) (cbrt -1/2)))))
#s(approx (/ (cbrt g) (cbrt (* a 2))) #s(hole binary64 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt -2)))))
#s(approx (/ (cbrt (/ g a)) (cbrt 2)) #s(hole binary64 (* (cbrt (/ g a)) (/ (pow (cbrt -1) 2) (cbrt 2)))))
#s(approx (cbrt (/ g a)) #s(hole binary64 (* (cbrt (/ g a)) (pow (cbrt -1) 2))))
#s(approx (* (cbrt a) (cbrt 2)) #s(hole binary64 (* -1 (* (cbrt a) (* (cbrt -1) (cbrt 2))))))
#s(approx (cbrt a) #s(hole binary64 (* -1 (* (cbrt a) (cbrt -1)))))
Calls

6 calls:

TimeVariablePointExpression
125.0ms
g
@inf
((cbrt (/ g (* 2 a))) (* (cbrt 1/2) (/ (cbrt g) (cbrt a))) (cbrt 1/2) (/ (cbrt g) (cbrt a)) (pow (/ g (+ a a)) 1/3) (/ g (+ a a)) (+ a a) (/ (cbrt (/ g 2)) (cbrt a)) (cbrt (/ g 2)) (/ g 2) (* 1/2 g) (/ (cbrt g) (cbrt (* a 2))) (/ (cbrt (/ g a)) (cbrt 2)) (cbrt (/ g a)) (/ g a) (/ (cbrt g) (* (cbrt a) (cbrt 2))) (cbrt g) (* (cbrt a) (cbrt 2)) (cbrt a) (cbrt 2))
17.0ms
g
@-inf
((cbrt (/ g (* 2 a))) (* (cbrt 1/2) (/ (cbrt g) (cbrt a))) (cbrt 1/2) (/ (cbrt g) (cbrt a)) (pow (/ g (+ a a)) 1/3) (/ g (+ a a)) (+ a a) (/ (cbrt (/ g 2)) (cbrt a)) (cbrt (/ g 2)) (/ g 2) (* 1/2 g) (/ (cbrt g) (cbrt (* a 2))) (/ (cbrt (/ g a)) (cbrt 2)) (cbrt (/ g a)) (/ g a) (/ (cbrt g) (* (cbrt a) (cbrt 2))) (cbrt g) (* (cbrt a) (cbrt 2)) (cbrt a) (cbrt 2))
14.0ms
a
@-inf
((cbrt (/ g (* 2 a))) (* (cbrt 1/2) (/ (cbrt g) (cbrt a))) (cbrt 1/2) (/ (cbrt g) (cbrt a)) (pow (/ g (+ a a)) 1/3) (/ g (+ a a)) (+ a a) (/ (cbrt (/ g 2)) (cbrt a)) (cbrt (/ g 2)) (/ g 2) (* 1/2 g) (/ (cbrt g) (cbrt (* a 2))) (/ (cbrt (/ g a)) (cbrt 2)) (cbrt (/ g a)) (/ g a) (/ (cbrt g) (* (cbrt a) (cbrt 2))) (cbrt g) (* (cbrt a) (cbrt 2)) (cbrt a) (cbrt 2))
7.0ms
a
@0
((cbrt (/ g (* 2 a))) (* (cbrt 1/2) (/ (cbrt g) (cbrt a))) (cbrt 1/2) (/ (cbrt g) (cbrt a)) (pow (/ g (+ a a)) 1/3) (/ g (+ a a)) (+ a a) (/ (cbrt (/ g 2)) (cbrt a)) (cbrt (/ g 2)) (/ g 2) (* 1/2 g) (/ (cbrt g) (cbrt (* a 2))) (/ (cbrt (/ g a)) (cbrt 2)) (cbrt (/ g a)) (/ g a) (/ (cbrt g) (* (cbrt a) (cbrt 2))) (cbrt g) (* (cbrt a) (cbrt 2)) (cbrt a) (cbrt 2))
7.0ms
a
@inf
((cbrt (/ g (* 2 a))) (* (cbrt 1/2) (/ (cbrt g) (cbrt a))) (cbrt 1/2) (/ (cbrt g) (cbrt a)) (pow (/ g (+ a a)) 1/3) (/ g (+ a a)) (+ a a) (/ (cbrt (/ g 2)) (cbrt a)) (cbrt (/ g 2)) (/ g 2) (* 1/2 g) (/ (cbrt g) (cbrt (* a 2))) (/ (cbrt (/ g a)) (cbrt 2)) (cbrt (/ g a)) (/ g a) (/ (cbrt g) (* (cbrt a) (cbrt 2))) (cbrt g) (* (cbrt a) (cbrt 2)) (cbrt a) (cbrt 2))

simplify103.0ms (3.3%)

Memory
31.3MiB live, 123.9MiB allocated; 13ms collecting garbage
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
0104439
1173425
2307425
3571425
41746425
56016423
08456423
Stop Event
iter limit
node limit
Counts
36 → 36
Calls
Call 1
Inputs
#s(approx (cbrt (/ g (* 2 a))) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (* (cbrt 1/2) (/ (cbrt g) (cbrt a))) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (/ (cbrt g) (cbrt a)) #s(hole binary64 (cbrt (/ g a))))
#s(approx (pow (/ g (+ a a)) 1/3) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (/ g (+ a a)) #s(hole binary64 (* 1/2 (/ g a))))
#s(approx (/ (cbrt (/ g 2)) (cbrt a)) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (cbrt (/ g 2)) #s(hole binary64 (* (cbrt g) (cbrt 1/2))))
#s(approx (/ g 2) #s(hole binary64 (* 1/2 g)))
#s(approx (* 1/2 g) #s(hole binary64 (* 1/2 g)))
#s(approx (/ (cbrt g) (cbrt (* a 2))) #s(hole binary64 (* (cbrt (/ g a)) (/ 1 (cbrt 2)))))
#s(approx (/ (cbrt (/ g a)) (cbrt 2)) #s(hole binary64 (* (cbrt (/ g a)) (/ 1 (cbrt 2)))))
#s(approx (cbrt (/ g a)) #s(hole binary64 (cbrt (/ g a))))
#s(approx (/ g a) #s(hole binary64 (/ g a)))
#s(approx (/ (cbrt g) (* (cbrt a) (cbrt 2))) #s(hole binary64 (* (cbrt (/ g a)) (/ 1 (cbrt 2)))))
#s(approx (cbrt g) #s(hole binary64 (cbrt g)))
#s(approx (cbrt (/ g (* 2 a))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1/2)))))
#s(approx (* (cbrt 1/2) (/ (cbrt g) (cbrt a))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (* (cbrt -1) (cbrt 1/2))))))
#s(approx (/ (cbrt g) (cbrt a)) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1)))))
#s(approx (pow (/ g (+ a a)) 1/3) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1/2)))))
#s(approx (/ (cbrt (/ g 2)) (cbrt a)) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1/2)))))
#s(approx (cbrt (/ g 2)) #s(hole binary64 (* -1 (* (cbrt g) (cbrt -1/2)))))
#s(approx (/ (cbrt g) (cbrt (* a 2))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt 2))))))
#s(approx (/ (cbrt (/ g a)) (cbrt 2)) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt 2))))))
#s(approx (cbrt (/ g a)) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1)))))
#s(approx (/ (cbrt g) (* (cbrt a) (cbrt 2))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt 2))))))
#s(approx (cbrt g) #s(hole binary64 (* -1 (* (cbrt g) (cbrt -1)))))
#s(approx (+ a a) #s(hole binary64 (* 2 a)))
#s(approx (* (cbrt a) (cbrt 2)) #s(hole binary64 (* (cbrt a) (cbrt 2))))
#s(approx (cbrt a) #s(hole binary64 (cbrt a)))
#s(approx (cbrt (/ g (* 2 a))) #s(hole binary64 (* (cbrt (/ g a)) (* (cbrt -1) (cbrt -1/2)))))
#s(approx (pow (/ g (+ a a)) 1/3) #s(hole binary64 (* (cbrt (/ g a)) (* (cbrt -1) (cbrt -1/2)))))
#s(approx (/ (cbrt g) (cbrt (* a 2))) #s(hole binary64 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt -2)))))
#s(approx (/ (cbrt (/ g a)) (cbrt 2)) #s(hole binary64 (* (cbrt (/ g a)) (/ (pow (cbrt -1) 2) (cbrt 2)))))
#s(approx (cbrt (/ g a)) #s(hole binary64 (* (cbrt (/ g a)) (pow (cbrt -1) 2))))
#s(approx (* (cbrt a) (cbrt 2)) #s(hole binary64 (* -1 (* (cbrt a) (* (cbrt -1) (cbrt 2))))))
#s(approx (cbrt a) #s(hole binary64 (* -1 (* (cbrt a) (cbrt -1)))))
Outputs
#s(approx (cbrt (/ g (* 2 a))) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (pow (/ g (+ a a)) 1/3) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 (/.f64 g a))))
#s(approx (* (cbrt 1/2) (/ (cbrt g) (cbrt a))) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (* (cbrt 1/2) (/ (cbrt g) (cbrt a))) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 (/.f64 g a))))
#s(approx (/ (cbrt g) (cbrt a)) #s(hole binary64 (cbrt (/ g a))))
#s(approx (/ (cbrt g) (cbrt a)) (cbrt.f64 (/.f64 g a)))
#s(approx (pow (/ g (+ a a)) 1/3) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (pow (/ g (+ a a)) 1/3) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 (/.f64 g a))))
#s(approx (/ g (+ a a)) #s(hole binary64 (* 1/2 (/ g a))))
#s(approx (/ g (+ a a)) (*.f64 #s(literal 1/2 binary64) (/.f64 g a)))
#s(approx (/ (cbrt (/ g 2)) (cbrt a)) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (/ (cbrt (/ g 2)) (cbrt a)) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 (/.f64 g a))))
#s(approx (cbrt (/ g 2)) #s(hole binary64 (* (cbrt g) (cbrt 1/2))))
#s(approx (cbrt (/ g 2)) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 g)))
#s(approx (/ g 2) #s(hole binary64 (* 1/2 g)))
#s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))
#s(approx (* 1/2 g) #s(hole binary64 (* 1/2 g)))
#s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))
#s(approx (/ (cbrt g) (cbrt (* a 2))) #s(hole binary64 (* (cbrt (/ g a)) (/ 1 (cbrt 2)))))
#s(approx (/ (cbrt g) (cbrt (* a 2))) (/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64))))
#s(approx (/ (cbrt (/ g a)) (cbrt 2)) #s(hole binary64 (* (cbrt (/ g a)) (/ 1 (cbrt 2)))))
#s(approx (/ (cbrt (/ g a)) (cbrt 2)) (/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64))))
#s(approx (cbrt (/ g a)) #s(hole binary64 (cbrt (/ g a))))
#s(approx (cbrt (/ g a)) (cbrt.f64 (/.f64 g a)))
#s(approx (/ g a) #s(hole binary64 (/ g a)))
#s(approx (/ g a) (/.f64 g a))
#s(approx (/ (cbrt g) (* (cbrt a) (cbrt 2))) #s(hole binary64 (* (cbrt (/ g a)) (/ 1 (cbrt 2)))))
#s(approx (/ (cbrt g) (* (cbrt a) (cbrt 2))) (/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64))))
#s(approx (cbrt g) #s(hole binary64 (cbrt g)))
#s(approx (cbrt g) (cbrt.f64 g))
#s(approx (cbrt (/ g (* 2 a))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1/2)))))
#s(approx (pow (/ g (+ a a)) 1/3) (*.f64 (neg.f64 (cbrt.f64 #s(literal -1/2 binary64))) (cbrt.f64 (/.f64 g a))))
#s(approx (* (cbrt 1/2) (/ (cbrt g) (cbrt a))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (* (cbrt -1) (cbrt 1/2))))))
#s(approx (* (cbrt 1/2) (/ (cbrt g) (cbrt a))) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 (/.f64 g a))))
#s(approx (/ (cbrt g) (cbrt a)) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1)))))
#s(approx (/ (cbrt g) (cbrt a)) (cbrt.f64 (/.f64 g a)))
#s(approx (pow (/ g (+ a a)) 1/3) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1/2)))))
#s(approx (pow (/ g (+ a a)) 1/3) (*.f64 (neg.f64 (cbrt.f64 #s(literal -1/2 binary64))) (cbrt.f64 (/.f64 g a))))
#s(approx (/ (cbrt (/ g 2)) (cbrt a)) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1/2)))))
#s(approx (/ (cbrt (/ g 2)) (cbrt a)) (*.f64 (neg.f64 (cbrt.f64 #s(literal -1/2 binary64))) (cbrt.f64 (/.f64 g a))))
#s(approx (cbrt (/ g 2)) #s(hole binary64 (* -1 (* (cbrt g) (cbrt -1/2)))))
#s(approx (cbrt (/ g 2)) (*.f64 (neg.f64 (cbrt.f64 #s(literal -1/2 binary64))) (cbrt.f64 g)))
#s(approx (/ (cbrt g) (cbrt (* a 2))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt 2))))))
#s(approx (/ (cbrt g) (cbrt (* a 2))) (/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64))))
#s(approx (/ (cbrt (/ g a)) (cbrt 2)) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt 2))))))
#s(approx (/ (cbrt (/ g a)) (cbrt 2)) (/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64))))
#s(approx (cbrt (/ g a)) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1)))))
#s(approx (cbrt (/ g a)) (cbrt.f64 (/.f64 g a)))
#s(approx (/ (cbrt g) (* (cbrt a) (cbrt 2))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt 2))))))
#s(approx (/ (cbrt g) (* (cbrt a) (cbrt 2))) (/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64))))
#s(approx (cbrt g) #s(hole binary64 (* -1 (* (cbrt g) (cbrt -1)))))
#s(approx (cbrt g) (cbrt.f64 g))
#s(approx (+ a a) #s(hole binary64 (* 2 a)))
#s(approx (+ a a) (*.f64 a #s(literal 2 binary64)))
#s(approx (* (cbrt a) (cbrt 2)) #s(hole binary64 (* (cbrt a) (cbrt 2))))
#s(approx (* (cbrt a) (cbrt 2)) (*.f64 (cbrt.f64 #s(literal 2 binary64)) (cbrt.f64 a)))
#s(approx (cbrt a) #s(hole binary64 (cbrt a)))
#s(approx (cbrt a) (cbrt.f64 a))
#s(approx (cbrt (/ g (* 2 a))) #s(hole binary64 (* (cbrt (/ g a)) (* (cbrt -1) (cbrt -1/2)))))
#s(approx (pow (/ g (+ a a)) 1/3) (*.f64 (neg.f64 (cbrt.f64 #s(literal -1/2 binary64))) (cbrt.f64 (/.f64 g a))))
#s(approx (pow (/ g (+ a a)) 1/3) #s(hole binary64 (* (cbrt (/ g a)) (* (cbrt -1) (cbrt -1/2)))))
#s(approx (pow (/ g (+ a a)) 1/3) (*.f64 (neg.f64 (cbrt.f64 #s(literal -1/2 binary64))) (cbrt.f64 (/.f64 g a))))
#s(approx (/ (cbrt g) (cbrt (* a 2))) #s(hole binary64 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt -2)))))
#s(approx (/ (cbrt g) (cbrt (* a 2))) (neg.f64 (/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal -2 binary64)))))
#s(approx (/ (cbrt (/ g a)) (cbrt 2)) #s(hole binary64 (* (cbrt (/ g a)) (/ (pow (cbrt -1) 2) (cbrt 2)))))
#s(approx (/ (cbrt (/ g a)) (cbrt 2)) (/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64))))
#s(approx (cbrt (/ g a)) #s(hole binary64 (* (cbrt (/ g a)) (pow (cbrt -1) 2))))
#s(approx (cbrt (/ g a)) (cbrt.f64 (/.f64 g a)))
#s(approx (* (cbrt a) (cbrt 2)) #s(hole binary64 (* -1 (* (cbrt a) (* (cbrt -1) (cbrt 2))))))
#s(approx (* (cbrt a) (cbrt 2)) (*.f64 (cbrt.f64 #s(literal 2 binary64)) (cbrt.f64 a)))
#s(approx (cbrt a) #s(hole binary64 (* -1 (* (cbrt a) (cbrt -1)))))
#s(approx (cbrt a) (cbrt.f64 a))

rewrite25.0ms (0.8%)

Memory
-24.7MiB live, 69.1MiB allocated; 3ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
033122
050111
0117111
Stop Event
iter limit
iter limit
iter limit
unsound
iter limit
Counts
20 → 70
Calls
Call 1
Inputs
#s(approx (cbrt (/ g (* 2 a))) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (/.f64 (cbrt.f64 g) (cbrt.f64 a))))
(*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (/.f64 (cbrt.f64 g) (cbrt.f64 a)))
(cbrt.f64 #s(literal 1/2 binary64))
(/.f64 (cbrt.f64 g) (cbrt.f64 a))
(pow.f64 (/.f64 g (+.f64 a a)) #s(literal 1/3 binary64))
(/.f64 g (+.f64 a a))
(+.f64 a a)
(/.f64 (cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))) (cbrt.f64 a))
(cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g)))
#s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))
(*.f64 #s(literal 1/2 binary64) g)
#s(approx (/ (cbrt g) (cbrt (* a 2))) (/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64))))
(/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64)))
(cbrt.f64 (/.f64 g a))
(/.f64 g a)
(/.f64 (cbrt.f64 g) (*.f64 (cbrt.f64 a) (cbrt.f64 #s(literal 2 binary64))))
(cbrt.f64 g)
(*.f64 (cbrt.f64 a) (cbrt.f64 #s(literal 2 binary64)))
(cbrt.f64 a)
(cbrt.f64 #s(literal 2 binary64))
Outputs
#s(approx (cbrt (/ g (* 2 a))) (*.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 1/2 binary64))))
(*.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 1/2 binary64)))
(*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 (/.f64 g a)))
(/.f64 (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 g)) (cbrt.f64 a))
(pow.f64 #s(literal 1/2 binary64) #s(literal 1/3 binary64))
(cbrt.f64 #s(literal 1/2 binary64))
(pow.f64 (/.f64 g a) #s(literal 1/3 binary64))
(/.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 a)))
(/.f64 (cbrt.f64 g) (cbrt.f64 a))
(cbrt.f64 (/.f64 g a))
(*.f64 (pow.f64 (/.f64 g (*.f64 a #s(literal 2 binary64))) #s(literal 1/6 binary64)) (pow.f64 (/.f64 g (*.f64 a #s(literal 2 binary64))) #s(literal 1/6 binary64)))
(pow.f64 (/.f64 g (*.f64 a #s(literal 2 binary64))) #s(literal 1/3 binary64))
(/.f64 (neg.f64 (cbrt.f64 (/.f64 g a))) (neg.f64 (cbrt.f64 #s(literal 2 binary64))))
(/.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 (*.f64 a #s(literal 2 binary64)))))
(/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64)))
(/.f64 (cbrt.f64 g) (cbrt.f64 (*.f64 a #s(literal 2 binary64))))
(cbrt.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)))
(cbrt.f64 (/.f64 g (*.f64 a #s(literal 2 binary64))))
(exp.f64 (*.f64 (log.f64 (/.f64 g (*.f64 a #s(literal 2 binary64)))) #s(literal 1/3 binary64)))
(/.f64 (neg.f64 g) (neg.f64 (*.f64 a #s(literal 2 binary64))))
(/.f64 (/.f64 g #s(literal 2 binary64)) a)
(/.f64 g (*.f64 a #s(literal 2 binary64)))
(*.f64 a #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) a)
(/.f64 (-.f64 (*.f64 a a) (*.f64 a a)) (-.f64 a a))
(/.f64 (+.f64 (pow.f64 a #s(literal 3 binary64)) (pow.f64 a #s(literal 3 binary64))) (fma.f64 a a (-.f64 (*.f64 a a) (*.f64 a a))))
(+.f64 a a)
(/.f64 (neg.f64 (cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g)))) (neg.f64 (cbrt.f64 a)))
(/.f64 (cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))) (cbrt.f64 a))
(cbrt.f64 (/.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g)) a))
(pow.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g)) #s(literal 1/3 binary64))
(cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g)))
#s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))
(*.f64 #s(literal 1/2 binary64) g)
(*.f64 g #s(literal 1/2 binary64))
#s(approx (cbrt (/ g (* 2 a))) (cbrt.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64))))
(*.f64 (pow.f64 (/.f64 g (*.f64 a #s(literal 2 binary64))) #s(literal 1/6 binary64)) (pow.f64 (/.f64 g (*.f64 a #s(literal 2 binary64))) #s(literal 1/6 binary64)))
(pow.f64 (/.f64 g (*.f64 a #s(literal 2 binary64))) #s(literal 1/3 binary64))
(/.f64 (neg.f64 (cbrt.f64 (/.f64 g a))) (neg.f64 (cbrt.f64 #s(literal 2 binary64))))
(/.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 (*.f64 a #s(literal 2 binary64)))))
(/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64)))
(/.f64 (cbrt.f64 g) (cbrt.f64 (*.f64 a #s(literal 2 binary64))))
(cbrt.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)))
(cbrt.f64 (/.f64 g (*.f64 a #s(literal 2 binary64))))
(exp.f64 (*.f64 (log.f64 (/.f64 g (*.f64 a #s(literal 2 binary64)))) #s(literal 1/3 binary64)))
(pow.f64 (/.f64 g a) #s(literal 1/3 binary64))
(/.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 a)))
(/.f64 (cbrt.f64 g) (cbrt.f64 a))
(cbrt.f64 (/.f64 g a))
(/.f64 (neg.f64 g) (neg.f64 a))
(/.f64 g a)
(*.f64 (pow.f64 (/.f64 g (*.f64 a #s(literal 2 binary64))) #s(literal 1/6 binary64)) (pow.f64 (/.f64 g (*.f64 a #s(literal 2 binary64))) #s(literal 1/6 binary64)))
(pow.f64 (/.f64 g (*.f64 a #s(literal 2 binary64))) #s(literal 1/3 binary64))
(/.f64 (neg.f64 (cbrt.f64 (/.f64 g a))) (neg.f64 (cbrt.f64 #s(literal 2 binary64))))
(/.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 (*.f64 a #s(literal 2 binary64)))))
(/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64)))
(/.f64 (cbrt.f64 g) (cbrt.f64 (*.f64 a #s(literal 2 binary64))))
(cbrt.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)))
(cbrt.f64 (/.f64 g (*.f64 a #s(literal 2 binary64))))
(exp.f64 (*.f64 (log.f64 (/.f64 g (*.f64 a #s(literal 2 binary64)))) #s(literal 1/3 binary64)))
(pow.f64 g #s(literal 1/3 binary64))
(cbrt.f64 g)
(*.f64 (cbrt.f64 #s(literal 2 binary64)) (cbrt.f64 a))
(*.f64 (cbrt.f64 a) (cbrt.f64 #s(literal 2 binary64)))
(pow.f64 (*.f64 a #s(literal 2 binary64)) #s(literal 1/3 binary64))
(cbrt.f64 (*.f64 a #s(literal 2 binary64)))
(pow.f64 a #s(literal 1/3 binary64))
(cbrt.f64 a)
(pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64))
(cbrt.f64 #s(literal 2 binary64))

eval8.0ms (0.2%)

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

Compiled 989 to 201 computations (79.7% saved)

prune8.0ms (0.2%)

Memory
-15.2MiB live, 31.7MiB allocated; 2ms collecting garbage
Pruning

12 alts after pruning (5 fresh and 7 done)

PrunedKeptTotal
New75378
Fresh224
Picked055
Done022
Total771289
Accuracy
99.8%
Counts
89 → 12
Alt Table
Click to see full alt table
StatusAccuracyProgram
42.5%
(pow.f64 (/.f64 g (+.f64 a a)) #s(literal 1/3 binary64))
43.9%
(/.f64 (cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))) (pow.f64 a #s(literal 1/3 binary64)))
98.7%
(/.f64 (cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))) (cbrt.f64 a))
98.7%
(/.f64 (cbrt.f64 g) (*.f64 (cbrt.f64 a) (pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64))))
98.2%
(/.f64 (cbrt.f64 g) (*.f64 (cbrt.f64 a) (cbrt.f64 #s(literal 2 binary64))))
98.7%
(/.f64 (cbrt.f64 g) (cbrt.f64 (+.f64 a a)))
98.7%
(/.f64 #s(approx (cbrt (/ g 2)) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 g))) (cbrt.f64 a))
79.7%
(cbrt.f64 (/.f64 g (+.f64 a a)))
79.6%
#s(approx (/ (cbrt g) (cbrt (* a 2))) (/.f64 (cbrt.f64 (/.f64 g a)) (pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64))))
79.0%
#s(approx (/ (cbrt g) (cbrt (* a 2))) (/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64))))
98.7%
#s(approx (cbrt (/ g (* 2 a))) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (/.f64 (cbrt.f64 g) (cbrt.f64 a))))
79.6%
#s(approx (cbrt (/ g (* 2 a))) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 (/.f64 g a))))
Compiler

Compiled 190 to 171 computations (10% saved)

simplify139.0ms (4.5%)

Memory
-0.3MiB live, 142.5MiB allocated; 8ms collecting garbage
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 (cbrt.f64 a) (pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64)))
cost-diff0
(cbrt.f64 g)
cost-diff0
(/.f64 (cbrt.f64 g) (*.f64 (cbrt.f64 a) (pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64))))
cost-diffInfinite
(pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64))
cost-diff0
(cbrt.f64 #s(literal 1/2 binary64))
cost-diff0
(*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 g))
cost-diff0
#s(approx (cbrt (/ g 2)) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 g)))
cost-diff0
(/.f64 #s(approx (cbrt (/ g 2)) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 g))) (cbrt.f64 a))
cost-diff0
(cbrt.f64 (/.f64 g a))
cost-diff0
(/.f64 (cbrt.f64 (/.f64 g a)) (pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64)))
cost-diff0
#s(approx (/ (cbrt g) (cbrt (* a 2))) (/.f64 (cbrt.f64 (/.f64 g a)) (pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64))))
cost-diffInfinite
(pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64))
cost-diff0
#s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))
cost-diff0
(cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g)))
cost-diff0
(/.f64 (cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))) (pow.f64 a #s(literal 1/3 binary64)))
cost-diffInfinite
(pow.f64 a #s(literal 1/3 binary64))
cost-diff0
(+.f64 a a)
cost-diff0
(cbrt.f64 (+.f64 a a))
cost-diff0
(cbrt.f64 g)
cost-diff0
(/.f64 (cbrt.f64 g) (cbrt.f64 (+.f64 a a)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
032156
050148
161148
270148
389148
4132148
5352148
61996148
77944148
08190148
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(/.f64 (cbrt.f64 g) (cbrt.f64 (+.f64 a a)))
(cbrt.f64 g)
g
(cbrt.f64 (+.f64 a a))
(+.f64 a a)
a
(/.f64 (cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))) (pow.f64 a #s(literal 1/3 binary64)))
(cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g)))
#s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))
(*.f64 #s(literal 1/2 binary64) g)
#s(literal 1/2 binary64)
g
(pow.f64 a #s(literal 1/3 binary64))
a
#s(literal 1/3 binary64)
#s(approx (/ (cbrt g) (cbrt (* a 2))) (/.f64 (cbrt.f64 (/.f64 g a)) (pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64))))
(/.f64 (cbrt.f64 (/.f64 g a)) (pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64)))
(cbrt.f64 (/.f64 g a))
(/.f64 g a)
g
a
(pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64))
#s(literal 2 binary64)
#s(literal 1/3 binary64)
(/.f64 #s(approx (cbrt (/ g 2)) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 g))) (cbrt.f64 a))
#s(approx (cbrt (/ g 2)) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 g)))
(*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 g))
(cbrt.f64 #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(cbrt.f64 g)
g
(cbrt.f64 a)
a
(/.f64 (cbrt.f64 g) (*.f64 (cbrt.f64 a) (pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64))))
(cbrt.f64 g)
g
(*.f64 (cbrt.f64 a) (pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64)))
(cbrt.f64 a)
a
(pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64))
#s(literal 2 binary64)
#s(literal 1/3 binary64)
Outputs
(/.f64 (cbrt.f64 g) (cbrt.f64 (+.f64 a a)))
(/.f64 (cbrt.f64 g) (cbrt.f64 (*.f64 #s(literal 2 binary64) a)))
(cbrt.f64 g)
g
(cbrt.f64 (+.f64 a a))
(cbrt.f64 (*.f64 #s(literal 2 binary64) a))
(+.f64 a a)
(*.f64 #s(literal 2 binary64) a)
a
(/.f64 (cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))) (pow.f64 a #s(literal 1/3 binary64)))
(/.f64 (cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))) (cbrt.f64 a))
(cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g)))
#s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))
(*.f64 #s(literal 1/2 binary64) g)
#s(literal 1/2 binary64)
g
(pow.f64 a #s(literal 1/3 binary64))
(cbrt.f64 a)
a
#s(literal 1/3 binary64)
#s(approx (/ (cbrt g) (cbrt (* a 2))) (/.f64 (cbrt.f64 (/.f64 g a)) (pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64))))
#s(approx (/ (cbrt g) (cbrt (* a 2))) (/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64))))
(/.f64 (cbrt.f64 (/.f64 g a)) (pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64)))
(/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64)))
(cbrt.f64 (/.f64 g a))
(/.f64 g a)
g
a
(pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64))
(cbrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
#s(literal 1/3 binary64)
(/.f64 #s(approx (cbrt (/ g 2)) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 g))) (cbrt.f64 a))
#s(approx (cbrt (/ g 2)) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 g)))
(*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 g))
(cbrt.f64 #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(cbrt.f64 g)
g
(cbrt.f64 a)
a
(/.f64 (cbrt.f64 g) (*.f64 (cbrt.f64 a) (pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64))))
(/.f64 (cbrt.f64 g) (*.f64 (cbrt.f64 a) (cbrt.f64 #s(literal 2 binary64))))
(cbrt.f64 g)
g
(*.f64 (cbrt.f64 a) (pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64)))
(*.f64 (cbrt.f64 a) (cbrt.f64 #s(literal 2 binary64)))
(cbrt.f64 a)
a
(pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64))
(cbrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
#s(literal 1/3 binary64)

localize83.0ms (2.7%)

Memory
12.3MiB live, 248.3MiB allocated; 11ms collecting garbage
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.3046875
(*.f64 (cbrt.f64 a) (pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64)))
accuracy0.37109375
(/.f64 (cbrt.f64 g) (*.f64 (cbrt.f64 a) (pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64))))
accuracy0.5358963867581884
(cbrt.f64 g)
accuracy0.5453301269897464
(cbrt.f64 a)
accuracy0.3717575195368841
(/.f64 #s(approx (cbrt (/ g 2)) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 g))) (cbrt.f64 a))
accuracy0.4551163086106522
(*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 g))
accuracy0.5358963867581884
(cbrt.f64 g)
accuracy0.5453301269897464
(cbrt.f64 a)
accuracy0.0
(/.f64 g a)
accuracy0.0
#s(approx (/ (cbrt g) (cbrt (* a 2))) (/.f64 (cbrt.f64 (/.f64 g a)) (pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64))))
accuracy0.265625
(/.f64 (cbrt.f64 (/.f64 g a)) (pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64)))
accuracy12.963798543693105
(cbrt.f64 (/.f64 g a))
accuracy0.0
#s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))
accuracy0.3717575195368841
(/.f64 (cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))) (pow.f64 a #s(literal 1/3 binary64)))
accuracy0.6059151856003986
(cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g)))
accuracy35.731405423589536
(pow.f64 a #s(literal 1/3 binary64))
accuracy0.0
(+.f64 a a)
accuracy0.37109375
(/.f64 (cbrt.f64 g) (cbrt.f64 (+.f64 a a)))
accuracy0.5358963867581884
(cbrt.f64 g)
accuracy0.6322250976844204
(cbrt.f64 (+.f64 a a))
Samples
65.0ms256×0valid
Compiler

Compiled 125 to 27 computations (78.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 37.0ms
ival-div: 12.0ms (32.4% of total)
ival-cbrt: 11.0ms (29.7% of total)
ival-mult: 6.0ms (16.2% of total)
const: 4.0ms (10.8% of total)
ival-add: 3.0ms (8.1% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series52.0ms (1.7%)

Memory
-23.2MiB live, 167.6MiB allocated; 22ms collecting garbage
Counts
20 → 35
Calls
Call 1
Inputs
(/.f64 (cbrt.f64 g) (cbrt.f64 (+.f64 a a)))
(cbrt.f64 g)
(cbrt.f64 (+.f64 a a))
(+.f64 a a)
(pow.f64 a #s(literal 1/3 binary64))
(/.f64 (cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))) (pow.f64 a #s(literal 1/3 binary64)))
(cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g)))
#s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))
(pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64))
#s(approx (/ (cbrt g) (cbrt (* a 2))) (/.f64 (cbrt.f64 (/.f64 g a)) (pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64))))
(/.f64 (cbrt.f64 (/.f64 g a)) (pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64)))
(cbrt.f64 (/.f64 g a))
(/.f64 #s(approx (cbrt (/ g 2)) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 g))) (cbrt.f64 a))
#s(approx (cbrt (/ g 2)) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 g)))
(*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 g))
(cbrt.f64 #s(literal 1/2 binary64))
(/.f64 (cbrt.f64 g) (*.f64 (cbrt.f64 a) (pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64))))
(*.f64 (cbrt.f64 a) (pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64)))
(/.f64 g a)
(cbrt.f64 a)
Outputs
#s(approx (/ (cbrt g) (cbrt (+ a a))) #s(hole binary64 (* (cbrt (/ g a)) (/ 1 (cbrt 2)))))
#s(approx (cbrt g) #s(hole binary64 (cbrt g)))
#s(approx (/ (cbrt (/ g 2)) (pow a 1/3)) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (cbrt (/ g 2)) #s(hole binary64 (* (cbrt g) (cbrt 1/2))))
#s(approx (/ g 2) #s(hole binary64 (* 1/2 g)))
#s(approx (/ (cbrt g) (cbrt (* a 2))) #s(hole binary64 (* (cbrt (/ g a)) (/ 1 (cbrt 2)))))
#s(approx (/ (cbrt (/ g a)) (pow 2 1/3)) #s(hole binary64 (* (cbrt (/ g a)) (/ 1 (cbrt 2)))))
#s(approx (cbrt (/ g a)) #s(hole binary64 (cbrt (/ g a))))
#s(approx (/ (cbrt (/ g 2)) (cbrt a)) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (* (cbrt 1/2) (cbrt g)) #s(hole binary64 (* (cbrt g) (cbrt 1/2))))
#s(approx (/ (cbrt g) (* (cbrt a) (pow 2 1/3))) #s(hole binary64 (* (cbrt (/ g a)) (/ 1 (cbrt 2)))))
#s(approx (/ g a) #s(hole binary64 (/ g a)))
#s(approx (/ (cbrt g) (cbrt (+ a a))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt 2))))))
#s(approx (cbrt g) #s(hole binary64 (* -1 (* (cbrt g) (cbrt -1)))))
#s(approx (/ (cbrt (/ g 2)) (pow a 1/3)) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1/2)))))
#s(approx (cbrt (/ g 2)) #s(hole binary64 (* -1 (* (cbrt g) (cbrt -1/2)))))
#s(approx (/ (cbrt g) (cbrt (* a 2))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt 2))))))
#s(approx (/ (cbrt (/ g a)) (pow 2 1/3)) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt 2))))))
#s(approx (cbrt (/ g a)) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1)))))
#s(approx (/ (cbrt (/ g 2)) (cbrt a)) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1/2)))))
#s(approx (* (cbrt 1/2) (cbrt g)) #s(hole binary64 (* -1 (* (cbrt g) (* (cbrt -1) (cbrt 1/2))))))
#s(approx (/ (cbrt g) (* (cbrt a) (pow 2 1/3))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt 2))))))
#s(approx (cbrt (+ a a)) #s(hole binary64 (* (cbrt a) (cbrt 2))))
#s(approx (+ a a) #s(hole binary64 (* 2 a)))
#s(approx (pow a 1/3) #s(hole binary64 (cbrt a)))
#s(approx (* (cbrt a) (pow 2 1/3)) #s(hole binary64 (* (cbrt a) (cbrt 2))))
#s(approx (cbrt a) #s(hole binary64 (cbrt a)))
#s(approx (/ (cbrt g) (cbrt (+ a a))) #s(hole binary64 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt -2)))))
#s(approx (cbrt (+ a a)) #s(hole binary64 (* -1 (* (cbrt a) (cbrt -2)))))
#s(approx (pow a 1/3) #s(hole binary64 (* -1 (* (cbrt a) (cbrt -1)))))
#s(approx (/ (cbrt g) (cbrt (* a 2))) #s(hole binary64 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt -2)))))
#s(approx (/ (cbrt (/ g a)) (pow 2 1/3)) #s(hole binary64 (* (cbrt (/ g a)) (/ (pow (cbrt -1) 2) (cbrt 2)))))
#s(approx (cbrt (/ g a)) #s(hole binary64 (* (cbrt (/ g a)) (pow (cbrt -1) 2))))
#s(approx (* (cbrt a) (pow 2 1/3)) #s(hole binary64 (* -1 (* (cbrt a) (* (cbrt -1) (cbrt 2))))))
#s(approx (cbrt a) #s(hole binary64 (* -1 (* (cbrt a) (cbrt -1)))))
Calls

6 calls:

TimeVariablePointExpression
12.0ms
g
@0
((/ (cbrt g) (cbrt (+ a a))) (cbrt g) (cbrt (+ a a)) (+ a a) (pow a 1/3) (/ (cbrt (/ g 2)) (pow a 1/3)) (cbrt (/ g 2)) (/ g 2) (pow 2 1/3) (/ (cbrt g) (cbrt (* a 2))) (/ (cbrt (/ g a)) (pow 2 1/3)) (cbrt (/ g a)) (/ (cbrt (/ g 2)) (cbrt a)) (cbrt (/ g 2)) (* (cbrt 1/2) (cbrt g)) (cbrt 1/2) (/ (cbrt g) (* (cbrt a) (pow 2 1/3))) (* (cbrt a) (pow 2 1/3)) (/ g a) (cbrt a))
11.0ms
a
@-inf
((/ (cbrt g) (cbrt (+ a a))) (cbrt g) (cbrt (+ a a)) (+ a a) (pow a 1/3) (/ (cbrt (/ g 2)) (pow a 1/3)) (cbrt (/ g 2)) (/ g 2) (pow 2 1/3) (/ (cbrt g) (cbrt (* a 2))) (/ (cbrt (/ g a)) (pow 2 1/3)) (cbrt (/ g a)) (/ (cbrt (/ g 2)) (cbrt a)) (cbrt (/ g 2)) (* (cbrt 1/2) (cbrt g)) (cbrt 1/2) (/ (cbrt g) (* (cbrt a) (pow 2 1/3))) (* (cbrt a) (pow 2 1/3)) (/ g a) (cbrt a))
9.0ms
g
@-inf
((/ (cbrt g) (cbrt (+ a a))) (cbrt g) (cbrt (+ a a)) (+ a a) (pow a 1/3) (/ (cbrt (/ g 2)) (pow a 1/3)) (cbrt (/ g 2)) (/ g 2) (pow 2 1/3) (/ (cbrt g) (cbrt (* a 2))) (/ (cbrt (/ g a)) (pow 2 1/3)) (cbrt (/ g a)) (/ (cbrt (/ g 2)) (cbrt a)) (cbrt (/ g 2)) (* (cbrt 1/2) (cbrt g)) (cbrt 1/2) (/ (cbrt g) (* (cbrt a) (pow 2 1/3))) (* (cbrt a) (pow 2 1/3)) (/ g a) (cbrt a))
7.0ms
a
@0
((/ (cbrt g) (cbrt (+ a a))) (cbrt g) (cbrt (+ a a)) (+ a a) (pow a 1/3) (/ (cbrt (/ g 2)) (pow a 1/3)) (cbrt (/ g 2)) (/ g 2) (pow 2 1/3) (/ (cbrt g) (cbrt (* a 2))) (/ (cbrt (/ g a)) (pow 2 1/3)) (cbrt (/ g a)) (/ (cbrt (/ g 2)) (cbrt a)) (cbrt (/ g 2)) (* (cbrt 1/2) (cbrt g)) (cbrt 1/2) (/ (cbrt g) (* (cbrt a) (pow 2 1/3))) (* (cbrt a) (pow 2 1/3)) (/ g a) (cbrt a))
6.0ms
g
@inf
((/ (cbrt g) (cbrt (+ a a))) (cbrt g) (cbrt (+ a a)) (+ a a) (pow a 1/3) (/ (cbrt (/ g 2)) (pow a 1/3)) (cbrt (/ g 2)) (/ g 2) (pow 2 1/3) (/ (cbrt g) (cbrt (* a 2))) (/ (cbrt (/ g a)) (pow 2 1/3)) (cbrt (/ g a)) (/ (cbrt (/ g 2)) (cbrt a)) (cbrt (/ g 2)) (* (cbrt 1/2) (cbrt g)) (cbrt 1/2) (/ (cbrt g) (* (cbrt a) (pow 2 1/3))) (* (cbrt a) (pow 2 1/3)) (/ g a) (cbrt a))

simplify97.0ms (3.1%)

Memory
4.8MiB live, 144.8MiB allocated; 8ms collecting garbage
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
0103417
1171399
2307399
3546399
41615399
55528395
08629395
Stop Event
iter limit
node limit
Counts
35 → 35
Calls
Call 1
Inputs
#s(approx (/ (cbrt g) (cbrt (+ a a))) #s(hole binary64 (* (cbrt (/ g a)) (/ 1 (cbrt 2)))))
#s(approx (cbrt g) #s(hole binary64 (cbrt g)))
#s(approx (/ (cbrt (/ g 2)) (pow a 1/3)) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (cbrt (/ g 2)) #s(hole binary64 (* (cbrt g) (cbrt 1/2))))
#s(approx (/ g 2) #s(hole binary64 (* 1/2 g)))
#s(approx (/ (cbrt g) (cbrt (* a 2))) #s(hole binary64 (* (cbrt (/ g a)) (/ 1 (cbrt 2)))))
#s(approx (/ (cbrt (/ g a)) (pow 2 1/3)) #s(hole binary64 (* (cbrt (/ g a)) (/ 1 (cbrt 2)))))
#s(approx (cbrt (/ g a)) #s(hole binary64 (cbrt (/ g a))))
#s(approx (/ (cbrt (/ g 2)) (cbrt a)) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (* (cbrt 1/2) (cbrt g)) #s(hole binary64 (* (cbrt g) (cbrt 1/2))))
#s(approx (/ (cbrt g) (* (cbrt a) (pow 2 1/3))) #s(hole binary64 (* (cbrt (/ g a)) (/ 1 (cbrt 2)))))
#s(approx (/ g a) #s(hole binary64 (/ g a)))
#s(approx (/ (cbrt g) (cbrt (+ a a))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt 2))))))
#s(approx (cbrt g) #s(hole binary64 (* -1 (* (cbrt g) (cbrt -1)))))
#s(approx (/ (cbrt (/ g 2)) (pow a 1/3)) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1/2)))))
#s(approx (cbrt (/ g 2)) #s(hole binary64 (* -1 (* (cbrt g) (cbrt -1/2)))))
#s(approx (/ (cbrt g) (cbrt (* a 2))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt 2))))))
#s(approx (/ (cbrt (/ g a)) (pow 2 1/3)) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt 2))))))
#s(approx (cbrt (/ g a)) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1)))))
#s(approx (/ (cbrt (/ g 2)) (cbrt a)) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1/2)))))
#s(approx (* (cbrt 1/2) (cbrt g)) #s(hole binary64 (* -1 (* (cbrt g) (* (cbrt -1) (cbrt 1/2))))))
#s(approx (/ (cbrt g) (* (cbrt a) (pow 2 1/3))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt 2))))))
#s(approx (cbrt (+ a a)) #s(hole binary64 (* (cbrt a) (cbrt 2))))
#s(approx (+ a a) #s(hole binary64 (* 2 a)))
#s(approx (pow a 1/3) #s(hole binary64 (cbrt a)))
#s(approx (* (cbrt a) (pow 2 1/3)) #s(hole binary64 (* (cbrt a) (cbrt 2))))
#s(approx (cbrt a) #s(hole binary64 (cbrt a)))
#s(approx (/ (cbrt g) (cbrt (+ a a))) #s(hole binary64 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt -2)))))
#s(approx (cbrt (+ a a)) #s(hole binary64 (* -1 (* (cbrt a) (cbrt -2)))))
#s(approx (pow a 1/3) #s(hole binary64 (* -1 (* (cbrt a) (cbrt -1)))))
#s(approx (/ (cbrt g) (cbrt (* a 2))) #s(hole binary64 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt -2)))))
#s(approx (/ (cbrt (/ g a)) (pow 2 1/3)) #s(hole binary64 (* (cbrt (/ g a)) (/ (pow (cbrt -1) 2) (cbrt 2)))))
#s(approx (cbrt (/ g a)) #s(hole binary64 (* (cbrt (/ g a)) (pow (cbrt -1) 2))))
#s(approx (* (cbrt a) (pow 2 1/3)) #s(hole binary64 (* -1 (* (cbrt a) (* (cbrt -1) (cbrt 2))))))
#s(approx (cbrt a) #s(hole binary64 (* -1 (* (cbrt a) (cbrt -1)))))
Outputs
#s(approx (/ (cbrt g) (cbrt (+ a a))) #s(hole binary64 (* (cbrt (/ g a)) (/ 1 (cbrt 2)))))
#s(approx (/ (cbrt g) (cbrt (+ a a))) (/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64))))
#s(approx (cbrt g) #s(hole binary64 (cbrt g)))
#s(approx (cbrt g) (cbrt.f64 g))
#s(approx (/ (cbrt (/ g 2)) (pow a 1/3)) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (/ (cbrt (/ g 2)) (pow a 1/3)) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 (/.f64 g a))))
#s(approx (cbrt (/ g 2)) #s(hole binary64 (* (cbrt g) (cbrt 1/2))))
#s(approx (cbrt (/ g 2)) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 g)))
#s(approx (/ g 2) #s(hole binary64 (* 1/2 g)))
#s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))
#s(approx (/ (cbrt g) (cbrt (* a 2))) #s(hole binary64 (* (cbrt (/ g a)) (/ 1 (cbrt 2)))))
#s(approx (/ (cbrt g) (cbrt (+ a a))) (/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64))))
#s(approx (/ (cbrt (/ g a)) (pow 2 1/3)) #s(hole binary64 (* (cbrt (/ g a)) (/ 1 (cbrt 2)))))
#s(approx (/ (cbrt (/ g a)) (pow 2 1/3)) (/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64))))
#s(approx (cbrt (/ g a)) #s(hole binary64 (cbrt (/ g a))))
#s(approx (cbrt (/ g a)) (cbrt.f64 (/.f64 g a)))
#s(approx (/ (cbrt (/ g 2)) (cbrt a)) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (/ (cbrt (/ g 2)) (pow a 1/3)) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 (/.f64 g a))))
#s(approx (* (cbrt 1/2) (cbrt g)) #s(hole binary64 (* (cbrt g) (cbrt 1/2))))
#s(approx (* (cbrt 1/2) (cbrt g)) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 g)))
#s(approx (/ (cbrt g) (* (cbrt a) (pow 2 1/3))) #s(hole binary64 (* (cbrt (/ g a)) (/ 1 (cbrt 2)))))
#s(approx (/ (cbrt g) (* (cbrt a) (pow 2 1/3))) (/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64))))
#s(approx (/ g a) #s(hole binary64 (/ g a)))
#s(approx (/ g a) (/.f64 g a))
#s(approx (/ (cbrt g) (cbrt (+ a a))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt 2))))))
#s(approx (/ (cbrt g) (cbrt (+ a a))) (/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64))))
#s(approx (cbrt g) #s(hole binary64 (* -1 (* (cbrt g) (cbrt -1)))))
#s(approx (cbrt g) (cbrt.f64 g))
#s(approx (/ (cbrt (/ g 2)) (pow a 1/3)) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1/2)))))
#s(approx (/ (cbrt (/ g 2)) (pow a 1/3)) (*.f64 (neg.f64 (cbrt.f64 #s(literal -1/2 binary64))) (cbrt.f64 (/.f64 g a))))
#s(approx (cbrt (/ g 2)) #s(hole binary64 (* -1 (* (cbrt g) (cbrt -1/2)))))
#s(approx (cbrt (/ g 2)) (*.f64 (cbrt.f64 #s(literal -1/2 binary64)) (neg.f64 (cbrt.f64 g))))
#s(approx (/ (cbrt g) (cbrt (* a 2))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt 2))))))
#s(approx (/ (cbrt g) (cbrt (+ a a))) (/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64))))
#s(approx (/ (cbrt (/ g a)) (pow 2 1/3)) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt 2))))))
#s(approx (/ (cbrt (/ g a)) (pow 2 1/3)) (/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64))))
#s(approx (cbrt (/ g a)) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1)))))
#s(approx (cbrt (/ g a)) (cbrt.f64 (/.f64 g a)))
#s(approx (/ (cbrt (/ g 2)) (cbrt a)) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1/2)))))
#s(approx (/ (cbrt (/ g 2)) (pow a 1/3)) (*.f64 (neg.f64 (cbrt.f64 #s(literal -1/2 binary64))) (cbrt.f64 (/.f64 g a))))
#s(approx (* (cbrt 1/2) (cbrt g)) #s(hole binary64 (* -1 (* (cbrt g) (* (cbrt -1) (cbrt 1/2))))))
#s(approx (* (cbrt 1/2) (cbrt g)) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 g)))
#s(approx (/ (cbrt g) (* (cbrt a) (pow 2 1/3))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt 2))))))
#s(approx (/ (cbrt g) (* (cbrt a) (pow 2 1/3))) (/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64))))
#s(approx (cbrt (+ a a)) #s(hole binary64 (* (cbrt a) (cbrt 2))))
#s(approx (cbrt (+ a a)) (*.f64 (cbrt.f64 a) (cbrt.f64 #s(literal 2 binary64))))
#s(approx (+ a a) #s(hole binary64 (* 2 a)))
#s(approx (+ a a) (*.f64 #s(literal 2 binary64) a))
#s(approx (pow a 1/3) #s(hole binary64 (cbrt a)))
#s(approx (pow a 1/3) (cbrt.f64 a))
#s(approx (* (cbrt a) (pow 2 1/3)) #s(hole binary64 (* (cbrt a) (cbrt 2))))
#s(approx (* (cbrt a) (pow 2 1/3)) (*.f64 (cbrt.f64 a) (cbrt.f64 #s(literal 2 binary64))))
#s(approx (cbrt a) #s(hole binary64 (cbrt a)))
#s(approx (pow a 1/3) (cbrt.f64 a))
#s(approx (/ (cbrt g) (cbrt (+ a a))) #s(hole binary64 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt -2)))))
#s(approx (/ (cbrt g) (cbrt (+ a a))) (neg.f64 (/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal -2 binary64)))))
#s(approx (cbrt (+ a a)) #s(hole binary64 (* -1 (* (cbrt a) (cbrt -2)))))
#s(approx (cbrt (+ a a)) (*.f64 (neg.f64 (cbrt.f64 #s(literal -2 binary64))) (cbrt.f64 a)))
#s(approx (pow a 1/3) #s(hole binary64 (* -1 (* (cbrt a) (cbrt -1)))))
#s(approx (pow a 1/3) (cbrt.f64 a))
#s(approx (/ (cbrt g) (cbrt (* a 2))) #s(hole binary64 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt -2)))))
#s(approx (/ (cbrt g) (cbrt (+ a a))) (neg.f64 (/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal -2 binary64)))))
#s(approx (/ (cbrt (/ g a)) (pow 2 1/3)) #s(hole binary64 (* (cbrt (/ g a)) (/ (pow (cbrt -1) 2) (cbrt 2)))))
#s(approx (/ (cbrt (/ g a)) (pow 2 1/3)) (/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64))))
#s(approx (cbrt (/ g a)) #s(hole binary64 (* (cbrt (/ g a)) (pow (cbrt -1) 2))))
#s(approx (cbrt (/ g a)) (cbrt.f64 (/.f64 g a)))
#s(approx (* (cbrt a) (pow 2 1/3)) #s(hole binary64 (* -1 (* (cbrt a) (* (cbrt -1) (cbrt 2))))))
#s(approx (* (cbrt a) (pow 2 1/3)) (*.f64 (cbrt.f64 a) (cbrt.f64 #s(literal 2 binary64))))
#s(approx (cbrt a) #s(hole binary64 (* -1 (* (cbrt a) (cbrt -1)))))
#s(approx (pow a 1/3) (cbrt.f64 a))

rewrite51.0ms (1.6%)

Memory
-0.3MiB live, 143.7MiB allocated; 7ms collecting garbage
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
032127
050112
111493
039093
Stop Event
iter limit
iter limit
iter limit
unsound
iter limit
Counts
20 → 186
Calls
Call 1
Inputs
(/.f64 (cbrt.f64 g) (cbrt.f64 (+.f64 a a)))
(cbrt.f64 g)
(cbrt.f64 (+.f64 a a))
(+.f64 a a)
(pow.f64 a #s(literal 1/3 binary64))
(/.f64 (cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))) (pow.f64 a #s(literal 1/3 binary64)))
(cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g)))
#s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))
(pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64))
#s(approx (/ (cbrt g) (cbrt (* a 2))) (/.f64 (cbrt.f64 (/.f64 g a)) (pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64))))
(/.f64 (cbrt.f64 (/.f64 g a)) (pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64)))
(cbrt.f64 (/.f64 g a))
(/.f64 #s(approx (cbrt (/ g 2)) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 g))) (cbrt.f64 a))
#s(approx (cbrt (/ g 2)) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 g)))
(*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 g))
(cbrt.f64 #s(literal 1/2 binary64))
(/.f64 (cbrt.f64 g) (*.f64 (cbrt.f64 a) (pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64))))
(*.f64 (cbrt.f64 a) (pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64)))
(/.f64 g a)
(cbrt.f64 a)
Outputs
(*.f64 (pow.f64 (/.f64 g #s(literal 2 binary64)) #s(literal 1/6 binary64)) (pow.f64 (/.f64 g #s(literal 2 binary64)) #s(literal 1/6 binary64)))
(pow.f64 (/.f64 g #s(literal 2 binary64)) #s(literal 1/3 binary64))
(/.f64 (/.f64 (cbrt.f64 g) (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64)))
(/.f64 (/.f64 (cbrt.f64 (/.f64 g a)) (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64)))
(/.f64 (neg.f64 (neg.f64 (cbrt.f64 (/.f64 g a)))) (neg.f64 (neg.f64 (cbrt.f64 #s(literal 2 binary64)))))
(/.f64 (neg.f64 (neg.f64 (cbrt.f64 g))) (neg.f64 (neg.f64 (cbrt.f64 #s(literal 2 binary64)))))
(/.f64 (cbrt.f64 (neg.f64 g)) (cbrt.f64 #s(literal -2 binary64)))
(/.f64 (neg.f64 (cbrt.f64 (/.f64 g a))) (neg.f64 (cbrt.f64 #s(literal 2 binary64))))
(/.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 #s(literal 2 binary64))))
(/.f64 (cbrt.f64 (/.f64 g #s(literal 2 binary64))) (cbrt.f64 a))
(/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64)))
(/.f64 (cbrt.f64 g) (cbrt.f64 #s(literal 2 binary64)))
(neg.f64 (/.f64 (neg.f64 (cbrt.f64 (/.f64 g a))) (cbrt.f64 #s(literal 2 binary64))))
(neg.f64 (/.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 #s(literal 2 binary64))))
(neg.f64 (/.f64 (cbrt.f64 (/.f64 g a)) (neg.f64 (cbrt.f64 #s(literal 2 binary64)))))
(neg.f64 (/.f64 (cbrt.f64 g) (neg.f64 (cbrt.f64 #s(literal 2 binary64)))))
(cbrt.f64 (/.f64 g #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (/.f64 g #s(literal 2 binary64))) #s(literal 1/3 binary64)))
(*.f64 (pow.f64 g #s(literal 1/6 binary64)) (pow.f64 g #s(literal 1/6 binary64)))
(pow.f64 g #s(literal 1/3 binary64))
(cbrt.f64 g)
(exp.f64 (*.f64 (log.f64 g) #s(literal 1/3 binary64)))
(*.f64 (*.f64 (cbrt.f64 a) (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64)))
(*.f64 (*.f64 (cbrt.f64 #s(literal 2 binary64)) (pow.f64 a #s(literal 1/6 binary64))) (pow.f64 a #s(literal 1/6 binary64)))
(*.f64 (*.f64 (pow.f64 a #s(literal 1/6 binary64)) (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64))) (*.f64 (pow.f64 a #s(literal 1/6 binary64)) (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64))))
(*.f64 (*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64)) (pow.f64 a #s(literal 1/6 binary64))) (*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64)) (pow.f64 a #s(literal 1/6 binary64))))
(*.f64 (neg.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64))) (neg.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64))))
(*.f64 (fabs.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64))) (fabs.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64))))
(*.f64 (pow.f64 a #s(literal 1/6 binary64)) (*.f64 (pow.f64 a #s(literal 1/6 binary64)) (cbrt.f64 #s(literal 2 binary64))))
(*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64)) (*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64)) (cbrt.f64 a)))
(*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64)) (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64)))
(*.f64 (cbrt.f64 a) (cbrt.f64 #s(literal 2 binary64)))
(*.f64 (cbrt.f64 #s(literal 2 binary64)) (cbrt.f64 a))
(pow.f64 (exp.f64 (log.f64 #s(literal 2 binary64))) #s(literal 1/3 binary64))
(pow.f64 #s(literal 4 binary64) #s(literal 1/6 binary64))
(pow.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64)) #s(literal 2 binary64))
(pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64))
(/.f64 (cbrt.f64 #s(literal 0 binary64)) (cbrt.f64 #s(literal 0 binary64)))
(/.f64 (cbrt.f64 (*.f64 #s(literal 2 binary64) (pow.f64 a #s(literal 3 binary64)))) (cbrt.f64 (fma.f64 a a #s(literal 0 binary64))))
(cbrt.f64 #s(literal 2 binary64))
(exp.f64 (fma.f64 (log.f64 a) #s(literal 1/3 binary64) (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/3 binary64))))
(exp.f64 (fma.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/3 binary64) (*.f64 (log.f64 a) #s(literal 1/3 binary64))))
(exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/3 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/3 binary64))) (sinh.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/3 binary64))))
#s(literal 2 binary64)
(*.f64 (neg.f64 (pow.f64 a #s(literal 1/6 binary64))) (neg.f64 (pow.f64 a #s(literal 1/6 binary64))))
(*.f64 (fabs.f64 (pow.f64 a #s(literal 1/6 binary64))) (fabs.f64 (pow.f64 a #s(literal 1/6 binary64))))
(*.f64 (pow.f64 a #s(literal 1/6 binary64)) (pow.f64 a #s(literal 1/6 binary64)))
(pow.f64 (exp.f64 (log.f64 a)) #s(literal 1/3 binary64))
(pow.f64 (pow.f64 a #s(literal 1/6 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 a a) #s(literal 1/6 binary64))
(pow.f64 a #s(literal 1/3 binary64))
(cbrt.f64 a)
(exp.f64 (*.f64 (log.f64 a) #s(literal 1/3 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 a) #s(literal 1/3 binary64))) (sinh.f64 (*.f64 (log.f64 a) #s(literal 1/3 binary64))))
(/.f64 (/.f64 (cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))) (pow.f64 a #s(literal 1/6 binary64))) (pow.f64 a #s(literal 1/6 binary64)))
(/.f64 (neg.f64 (neg.f64 (cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))))) (neg.f64 (neg.f64 (cbrt.f64 a))))
(/.f64 (neg.f64 (cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g)))) (neg.f64 (cbrt.f64 a)))
(/.f64 (cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))) (cbrt.f64 a))
(neg.f64 (/.f64 (neg.f64 (cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g)))) (cbrt.f64 a)))
(neg.f64 (/.f64 (cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))) (neg.f64 (cbrt.f64 a))))
(cbrt.f64 (/.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g)) a))
(*.f64 (pow.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g)) #s(literal 1/6 binary64)) (pow.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g)) #s(literal 1/6 binary64)))
(pow.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g)) #s(literal 1/3 binary64))
(cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g)))
(exp.f64 (*.f64 (log.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))) #s(literal 1/3 binary64)))
#s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))
(*.f64 (*.f64 (cbrt.f64 a) (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64)))
(*.f64 (*.f64 (cbrt.f64 #s(literal 2 binary64)) (pow.f64 a #s(literal 1/6 binary64))) (pow.f64 a #s(literal 1/6 binary64)))
(*.f64 (*.f64 (pow.f64 a #s(literal 1/6 binary64)) (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64))) (*.f64 (pow.f64 a #s(literal 1/6 binary64)) (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64))))
(*.f64 (*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64)) (pow.f64 a #s(literal 1/6 binary64))) (*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64)) (pow.f64 a #s(literal 1/6 binary64))))
(*.f64 (neg.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64))) (neg.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64))))
(*.f64 (fabs.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64))) (fabs.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64))))
(*.f64 (pow.f64 a #s(literal 1/6 binary64)) (*.f64 (pow.f64 a #s(literal 1/6 binary64)) (cbrt.f64 #s(literal 2 binary64))))
(*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64)) (*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64)) (cbrt.f64 a)))
(*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64)) (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64)))
(*.f64 (cbrt.f64 a) (cbrt.f64 #s(literal 2 binary64)))
(*.f64 (cbrt.f64 #s(literal 2 binary64)) (cbrt.f64 a))
(pow.f64 (exp.f64 (log.f64 #s(literal 2 binary64))) #s(literal 1/3 binary64))
(pow.f64 #s(literal 4 binary64) #s(literal 1/6 binary64))
(pow.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64)) #s(literal 2 binary64))
(pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64))
(/.f64 (cbrt.f64 #s(literal 0 binary64)) (cbrt.f64 #s(literal 0 binary64)))
(/.f64 (cbrt.f64 (*.f64 #s(literal 2 binary64) (pow.f64 a #s(literal 3 binary64)))) (cbrt.f64 (fma.f64 a a #s(literal 0 binary64))))
(cbrt.f64 #s(literal 2 binary64))
(exp.f64 (fma.f64 (log.f64 a) #s(literal 1/3 binary64) (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/3 binary64))))
(exp.f64 (fma.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/3 binary64) (*.f64 (log.f64 a) #s(literal 1/3 binary64))))
(exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/3 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/3 binary64))) (sinh.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/3 binary64))))
#s(approx (/ (cbrt g) (cbrt (* a 2))) (cbrt.f64 (/.f64 g #s(literal 2 binary64))))
(*.f64 (pow.f64 (/.f64 g #s(literal 2 binary64)) #s(literal 1/6 binary64)) (pow.f64 (/.f64 g #s(literal 2 binary64)) #s(literal 1/6 binary64)))
(pow.f64 (/.f64 g #s(literal 2 binary64)) #s(literal 1/3 binary64))
(/.f64 (/.f64 (cbrt.f64 g) (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64)))
(/.f64 (/.f64 (cbrt.f64 (/.f64 g a)) (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64)))
(/.f64 (neg.f64 (neg.f64 (cbrt.f64 (/.f64 g a)))) (neg.f64 (neg.f64 (cbrt.f64 #s(literal 2 binary64)))))
(/.f64 (neg.f64 (neg.f64 (cbrt.f64 g))) (neg.f64 (neg.f64 (cbrt.f64 #s(literal 2 binary64)))))
(/.f64 (cbrt.f64 (neg.f64 g)) (cbrt.f64 #s(literal -2 binary64)))
(/.f64 (neg.f64 (cbrt.f64 (/.f64 g a))) (neg.f64 (cbrt.f64 #s(literal 2 binary64))))
(/.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 #s(literal 2 binary64))))
(/.f64 (cbrt.f64 (/.f64 g #s(literal 2 binary64))) (cbrt.f64 a))
(/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64)))
(/.f64 (cbrt.f64 g) (cbrt.f64 #s(literal 2 binary64)))
(neg.f64 (/.f64 (neg.f64 (cbrt.f64 (/.f64 g a))) (cbrt.f64 #s(literal 2 binary64))))
(neg.f64 (/.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 #s(literal 2 binary64))))
(neg.f64 (/.f64 (cbrt.f64 (/.f64 g a)) (neg.f64 (cbrt.f64 #s(literal 2 binary64)))))
(neg.f64 (/.f64 (cbrt.f64 g) (neg.f64 (cbrt.f64 #s(literal 2 binary64)))))
(cbrt.f64 (/.f64 g #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (/.f64 g #s(literal 2 binary64))) #s(literal 1/3 binary64)))
(*.f64 (pow.f64 (/.f64 g a) #s(literal 1/6 binary64)) (pow.f64 (/.f64 g a) #s(literal 1/6 binary64)))
(pow.f64 (/.f64 g a) #s(literal 1/3 binary64))
(/.f64 (/.f64 (cbrt.f64 g) (pow.f64 a #s(literal 1/6 binary64))) (pow.f64 a #s(literal 1/6 binary64)))
(/.f64 (cbrt.f64 (neg.f64 g)) (cbrt.f64 (neg.f64 a)))
(/.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 a)))
(/.f64 (cbrt.f64 g) (cbrt.f64 a))
(cbrt.f64 (/.f64 g a))
(exp.f64 (*.f64 (log.f64 (/.f64 g a)) #s(literal 1/3 binary64)))
(/.f64 (/.f64 #s(approx (/ (cbrt g) (cbrt (* a 2))) (cbrt.f64 (*.f64 #s(literal 1/2 binary64) g))) (pow.f64 a #s(literal 1/6 binary64))) (pow.f64 a #s(literal 1/6 binary64)))
(/.f64 (neg.f64 (neg.f64 #s(approx (/ (cbrt g) (cbrt (* a 2))) (cbrt.f64 (*.f64 #s(literal 1/2 binary64) g))))) (neg.f64 (neg.f64 (cbrt.f64 a))))
(/.f64 (neg.f64 #s(approx (/ (cbrt g) (cbrt (* a 2))) (cbrt.f64 (*.f64 #s(literal 1/2 binary64) g)))) (neg.f64 (cbrt.f64 a)))
(/.f64 #s(approx (/ (cbrt g) (cbrt (* a 2))) (cbrt.f64 (*.f64 #s(literal 1/2 binary64) g))) (cbrt.f64 a))
(neg.f64 (/.f64 (neg.f64 #s(approx (/ (cbrt g) (cbrt (* a 2))) (cbrt.f64 (*.f64 #s(literal 1/2 binary64) g)))) (cbrt.f64 a)))
(neg.f64 (/.f64 #s(approx (/ (cbrt g) (cbrt (* a 2))) (cbrt.f64 (*.f64 #s(literal 1/2 binary64) g))) (neg.f64 (cbrt.f64 a))))
#s(approx (/ (cbrt g) (cbrt (* a 2))) (cbrt.f64 (*.f64 #s(literal 1/2 binary64) g)))
(*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 g))
(*.f64 (cbrt.f64 g) (cbrt.f64 #s(literal 1/2 binary64)))
(pow.f64 (*.f64 #s(literal 1/2 binary64) g) #s(literal 1/3 binary64))
(cbrt.f64 (*.f64 #s(literal 1/2 binary64) g))
(*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 1/6 binary64)) (pow.f64 #s(literal 1/2 binary64) #s(literal 1/6 binary64)))
(pow.f64 #s(literal 1/2 binary64) #s(literal 1/3 binary64))
(cbrt.f64 #s(literal 1/2 binary64))
(exp.f64 (*.f64 (log.f64 #s(literal 1/2 binary64)) #s(literal 1/3 binary64)))
(*.f64 (pow.f64 (/.f64 g #s(literal 2 binary64)) #s(literal 1/6 binary64)) (pow.f64 (/.f64 g #s(literal 2 binary64)) #s(literal 1/6 binary64)))
(pow.f64 (/.f64 g #s(literal 2 binary64)) #s(literal 1/3 binary64))
(/.f64 (/.f64 (cbrt.f64 g) (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64)))
(/.f64 (/.f64 (cbrt.f64 (/.f64 g a)) (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64)))
(/.f64 (neg.f64 (neg.f64 (cbrt.f64 (/.f64 g a)))) (neg.f64 (neg.f64 (cbrt.f64 #s(literal 2 binary64)))))
(/.f64 (neg.f64 (neg.f64 (cbrt.f64 g))) (neg.f64 (neg.f64 (cbrt.f64 #s(literal 2 binary64)))))
(/.f64 (cbrt.f64 (neg.f64 g)) (cbrt.f64 #s(literal -2 binary64)))
(/.f64 (neg.f64 (cbrt.f64 (/.f64 g a))) (neg.f64 (cbrt.f64 #s(literal 2 binary64))))
(/.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 #s(literal 2 binary64))))
(/.f64 (cbrt.f64 (/.f64 g #s(literal 2 binary64))) (cbrt.f64 a))
(/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64)))
(/.f64 (cbrt.f64 g) (cbrt.f64 #s(literal 2 binary64)))
(neg.f64 (/.f64 (neg.f64 (cbrt.f64 (/.f64 g a))) (cbrt.f64 #s(literal 2 binary64))))
(neg.f64 (/.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 #s(literal 2 binary64))))
(neg.f64 (/.f64 (cbrt.f64 (/.f64 g a)) (neg.f64 (cbrt.f64 #s(literal 2 binary64)))))
(neg.f64 (/.f64 (cbrt.f64 g) (neg.f64 (cbrt.f64 #s(literal 2 binary64)))))
(cbrt.f64 (/.f64 g #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (/.f64 g #s(literal 2 binary64))) #s(literal 1/3 binary64)))
(*.f64 (*.f64 (cbrt.f64 a) (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64)))
(*.f64 (*.f64 (cbrt.f64 #s(literal 2 binary64)) (pow.f64 a #s(literal 1/6 binary64))) (pow.f64 a #s(literal 1/6 binary64)))
(*.f64 (*.f64 (pow.f64 a #s(literal 1/6 binary64)) (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64))) (*.f64 (pow.f64 a #s(literal 1/6 binary64)) (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64))))
(*.f64 (*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64)) (pow.f64 a #s(literal 1/6 binary64))) (*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64)) (pow.f64 a #s(literal 1/6 binary64))))
(*.f64 (neg.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64))) (neg.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64))))
(*.f64 (fabs.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64))) (fabs.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64))))
(*.f64 (pow.f64 a #s(literal 1/6 binary64)) (*.f64 (pow.f64 a #s(literal 1/6 binary64)) (cbrt.f64 #s(literal 2 binary64))))
(*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64)) (*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64)) (cbrt.f64 a)))
(*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64)) (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64)))
(*.f64 (cbrt.f64 a) (cbrt.f64 #s(literal 2 binary64)))
(*.f64 (cbrt.f64 #s(literal 2 binary64)) (cbrt.f64 a))
(pow.f64 (exp.f64 (log.f64 #s(literal 2 binary64))) #s(literal 1/3 binary64))
(pow.f64 #s(literal 4 binary64) #s(literal 1/6 binary64))
(pow.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64)) #s(literal 2 binary64))
(pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64))
(/.f64 (cbrt.f64 #s(literal 0 binary64)) (cbrt.f64 #s(literal 0 binary64)))
(/.f64 (cbrt.f64 (*.f64 #s(literal 2 binary64) (pow.f64 a #s(literal 3 binary64)))) (cbrt.f64 (fma.f64 a a #s(literal 0 binary64))))
(cbrt.f64 #s(literal 2 binary64))
(exp.f64 (fma.f64 (log.f64 a) #s(literal 1/3 binary64) (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/3 binary64))))
(exp.f64 (fma.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/3 binary64) (*.f64 (log.f64 a) #s(literal 1/3 binary64))))
(exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/3 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/3 binary64))) (sinh.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/3 binary64))))
(/.f64 (neg.f64 (neg.f64 g)) (neg.f64 (neg.f64 a)))
(/.f64 (neg.f64 g) (neg.f64 a))
(/.f64 g a)
(neg.f64 (/.f64 (neg.f64 g) a))
(neg.f64 (/.f64 g (neg.f64 a)))
(*.f64 (neg.f64 (pow.f64 a #s(literal 1/6 binary64))) (neg.f64 (pow.f64 a #s(literal 1/6 binary64))))
(*.f64 (fabs.f64 (pow.f64 a #s(literal 1/6 binary64))) (fabs.f64 (pow.f64 a #s(literal 1/6 binary64))))
(*.f64 (pow.f64 a #s(literal 1/6 binary64)) (pow.f64 a #s(literal 1/6 binary64)))
(pow.f64 (exp.f64 (log.f64 a)) #s(literal 1/3 binary64))
(pow.f64 (pow.f64 a #s(literal 1/6 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 a a) #s(literal 1/6 binary64))
(pow.f64 a #s(literal 1/3 binary64))
(cbrt.f64 a)
(exp.f64 (*.f64 (log.f64 a) #s(literal 1/3 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 a) #s(literal 1/3 binary64))) (sinh.f64 (*.f64 (log.f64 a) #s(literal 1/3 binary64))))

eval12.0ms (0.4%)

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

Compiled 1 633 to 357 computations (78.1% saved)

prune13.0ms (0.4%)

Memory
-6.2MiB live, 40.2MiB allocated; 2ms collecting garbage
Pruning

19 alts after pruning (7 fresh and 12 done)

PrunedKeptTotal
New1167123
Fresh000
Picked055
Done077
Total11619135
Accuracy
99.8%
Counts
135 → 19
Alt Table
Click to see full alt table
StatusAccuracyProgram
42.5%
(pow.f64 (/.f64 g (+.f64 a a)) #s(literal 1/3 binary64))
2.4%
(pow.f64 (/.f64 g #s(literal 2 binary64)) #s(literal 1/3 binary64))
79.5%
(/.f64 (/.f64 (cbrt.f64 (/.f64 g a)) (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64)))
46.7%
(/.f64 (exp.f64 (*.f64 (log.f64 g) #s(literal 1/3 binary64))) (cbrt.f64 (+.f64 a a)))
43.9%
(/.f64 (cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))) (pow.f64 a #s(literal 1/3 binary64)))
98.7%
(/.f64 (cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))) (cbrt.f64 a))
4.6%
(/.f64 (cbrt.f64 g) (pow.f64 #s(literal 4 binary64) #s(literal 1/6 binary64)))
98.7%
(/.f64 (cbrt.f64 g) (*.f64 (cbrt.f64 a) (pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64))))
98.2%
(/.f64 (cbrt.f64 g) (*.f64 (cbrt.f64 a) (cbrt.f64 #s(literal 2 binary64))))
98.7%
(/.f64 (cbrt.f64 g) (cbrt.f64 (+.f64 a a)))
4.6%
(/.f64 (cbrt.f64 g) (cbrt.f64 #s(literal 2 binary64)))
98.6%
(/.f64 #s(approx (cbrt (/ g 2)) (*.f64 (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 1/6 binary64)) (pow.f64 #s(literal 1/2 binary64) #s(literal 1/6 binary64))) (cbrt.f64 g))) (cbrt.f64 a))
98.7%
(/.f64 #s(approx (cbrt (/ g 2)) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 g))) (cbrt.f64 a))
79.7%
(cbrt.f64 (/.f64 g (+.f64 a a)))
4.6%
(cbrt.f64 (/.f64 g #s(literal 2 binary64)))
79.6%
#s(approx (/ (cbrt g) (cbrt (* a 2))) (/.f64 (cbrt.f64 (/.f64 g a)) (pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64))))
79.0%
#s(approx (/ (cbrt g) (cbrt (* a 2))) (/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64))))
98.7%
#s(approx (cbrt (/ g (* 2 a))) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (/.f64 (cbrt.f64 g) (cbrt.f64 a))))
79.6%
#s(approx (cbrt (/ g (* 2 a))) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 (/.f64 g a))))
Compiler

Compiled 429 to 257 computations (40.1% saved)

regimes39.0ms (1.3%)

Memory
-9.2MiB live, 133.0MiB allocated; 7ms collecting garbage
Counts
25 → 1
Calls
Call 1
Inputs
(cbrt.f64 (/.f64 g #s(literal 2 binary64)))
(pow.f64 (/.f64 g #s(literal 2 binary64)) #s(literal 1/3 binary64))
(cbrt.f64 (/.f64 g (+.f64 a a)))
(pow.f64 (/.f64 g (+.f64 a a)) #s(literal 1/3 binary64))
(cbrt.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)))
(pow.f64 (/.f64 g (*.f64 a #s(literal 2 binary64))) #s(literal 1/3 binary64))
(/.f64 (cbrt.f64 g) (cbrt.f64 #s(literal 2 binary64)))
(/.f64 (cbrt.f64 g) (pow.f64 #s(literal 4 binary64) #s(literal 1/6 binary64)))
(/.f64 (cbrt.f64 g) (cbrt.f64 (+.f64 a a)))
#s(approx (cbrt (/ g (* 2 a))) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 (/.f64 g a))))
(/.f64 (cbrt.f64 g) (cbrt.f64 (*.f64 a #s(literal 2 binary64))))
(/.f64 (cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))) (cbrt.f64 a))
(/.f64 (cbrt.f64 g) (pow.f64 (*.f64 #s(literal 2 binary64) a) #s(literal 1/3 binary64)))
(/.f64 (cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))) (pow.f64 a #s(literal 1/3 binary64)))
#s(approx (/ (cbrt g) (cbrt (* a 2))) (/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64))))
(/.f64 (cbrt.f64 (/.f64 g #s(literal 2 binary64))) (cbrt.f64 a))
#s(approx (/ (cbrt g) (cbrt (* a 2))) (/.f64 (cbrt.f64 (/.f64 g a)) (pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64))))
#s(approx (cbrt (/ g (* 2 a))) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (/.f64 (cbrt.f64 g) (cbrt.f64 a))))
(/.f64 #s(approx (cbrt (/ g 2)) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 g))) (cbrt.f64 a))
(/.f64 (cbrt.f64 g) (*.f64 (cbrt.f64 a) (cbrt.f64 #s(literal 2 binary64))))
(/.f64 (cbrt.f64 g) (*.f64 (cbrt.f64 a) (pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64))))
(/.f64 (exp.f64 (*.f64 (log.f64 g) #s(literal 1/3 binary64))) (cbrt.f64 (+.f64 a a)))
(/.f64 (/.f64 (cbrt.f64 g) (cbrt.f64 #s(literal 2 binary64))) (cbrt.f64 a))
(/.f64 (/.f64 (cbrt.f64 (/.f64 g a)) (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/6 binary64)))
(/.f64 #s(approx (cbrt (/ g 2)) (*.f64 (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 1/6 binary64)) (pow.f64 #s(literal 1/2 binary64) #s(literal 1/6 binary64))) (cbrt.f64 g))) (cbrt.f64 a))
Outputs
#s(approx (cbrt (/ g (* 2 a))) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (/.f64 (cbrt.f64 g) (cbrt.f64 a))))
Calls

5 calls:

9.0ms
(cbrt.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)))
8.0ms
a
7.0ms
(*.f64 #s(literal 2 binary64) a)
7.0ms
g
6.0ms
(/.f64 g (*.f64 #s(literal 2 binary64) a))
Results
AccuracySegmentsBranch
98.7%1(*.f64 #s(literal 2 binary64) a)
98.7%1(/.f64 g (*.f64 #s(literal 2 binary64) a))
98.7%1(cbrt.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)))
98.7%1g
98.7%1a
Compiler

Compiled 16 to 19 computations (-18.8% saved)

regimes26.0ms (0.8%)

Memory
-17.4MiB live, 76.5MiB allocated; 3ms collecting garbage
Counts
17 → 1
Calls
Call 1
Inputs
(cbrt.f64 (/.f64 g #s(literal 2 binary64)))
(pow.f64 (/.f64 g #s(literal 2 binary64)) #s(literal 1/3 binary64))
(cbrt.f64 (/.f64 g (+.f64 a a)))
(pow.f64 (/.f64 g (+.f64 a a)) #s(literal 1/3 binary64))
(cbrt.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)))
(pow.f64 (/.f64 g (*.f64 a #s(literal 2 binary64))) #s(literal 1/3 binary64))
(/.f64 (cbrt.f64 g) (cbrt.f64 #s(literal 2 binary64)))
(/.f64 (cbrt.f64 g) (pow.f64 #s(literal 4 binary64) #s(literal 1/6 binary64)))
(/.f64 (cbrt.f64 g) (cbrt.f64 (+.f64 a a)))
#s(approx (cbrt (/ g (* 2 a))) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (cbrt.f64 (/.f64 g a))))
(/.f64 (cbrt.f64 g) (cbrt.f64 (*.f64 a #s(literal 2 binary64))))
(/.f64 (cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))) (cbrt.f64 a))
(/.f64 (cbrt.f64 g) (pow.f64 (*.f64 #s(literal 2 binary64) a) #s(literal 1/3 binary64)))
(/.f64 (cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))) (pow.f64 a #s(literal 1/3 binary64)))
#s(approx (/ (cbrt g) (cbrt (* a 2))) (/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64))))
(/.f64 (cbrt.f64 (/.f64 g #s(literal 2 binary64))) (cbrt.f64 a))
#s(approx (/ (cbrt g) (cbrt (* a 2))) (/.f64 (cbrt.f64 (/.f64 g a)) (pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64))))
Outputs
(/.f64 (cbrt.f64 g) (cbrt.f64 (+.f64 a a)))
Calls

5 calls:

6.0ms
g
6.0ms
(*.f64 #s(literal 2 binary64) a)
5.0ms
a
5.0ms
(cbrt.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)))
4.0ms
(/.f64 g (*.f64 #s(literal 2 binary64) a))
Results
AccuracySegmentsBranch
98.7%1(*.f64 #s(literal 2 binary64) a)
98.7%1(/.f64 g (*.f64 #s(literal 2 binary64) a))
98.7%1(cbrt.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)))
98.7%1g
98.7%1a
Compiler

Compiled 16 to 19 computations (-18.8% saved)

regimes19.0ms (0.6%)

Memory
-0.9MiB live, 48.2MiB allocated; 12ms collecting garbage
Counts
8 → 1
Calls
Call 1
Inputs
(cbrt.f64 (/.f64 g #s(literal 2 binary64)))
(pow.f64 (/.f64 g #s(literal 2 binary64)) #s(literal 1/3 binary64))
(cbrt.f64 (/.f64 g (+.f64 a a)))
(pow.f64 (/.f64 g (+.f64 a a)) #s(literal 1/3 binary64))
(cbrt.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)))
(pow.f64 (/.f64 g (*.f64 a #s(literal 2 binary64))) #s(literal 1/3 binary64))
(/.f64 (cbrt.f64 g) (cbrt.f64 #s(literal 2 binary64)))
(/.f64 (cbrt.f64 g) (pow.f64 #s(literal 4 binary64) #s(literal 1/6 binary64)))
Outputs
(cbrt.f64 (/.f64 g (+.f64 a a)))
Calls

5 calls:

8.0ms
(*.f64 #s(literal 2 binary64) a)
3.0ms
g
3.0ms
(cbrt.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)))
3.0ms
a
3.0ms
(/.f64 g (*.f64 #s(literal 2 binary64) a))
Results
AccuracySegmentsBranch
79.7%1(*.f64 #s(literal 2 binary64) a)
79.7%1(/.f64 g (*.f64 #s(literal 2 binary64) a))
79.7%1(cbrt.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)))
79.7%1g
79.7%1a
Compiler

Compiled 16 to 19 computations (-18.8% saved)

regimes7.0ms (0.2%)

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

Total -1.4b remaining (-2.2%)

Threshold costs -1.4b (-2.2%)

Counts
2 → 1
Calls
Call 1
Inputs
(cbrt.f64 (/.f64 g #s(literal 2 binary64)))
(pow.f64 (/.f64 g #s(literal 2 binary64)) #s(literal 1/3 binary64))
Outputs
(cbrt.f64 (/.f64 g #s(literal 2 binary64)))
Calls

5 calls:

1.0ms
g
1.0ms
(*.f64 #s(literal 2 binary64) a)
1.0ms
(cbrt.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)))
1.0ms
a
1.0ms
(/.f64 g (*.f64 #s(literal 2 binary64) a))
Results
AccuracySegmentsBranch
4.6%1(*.f64 #s(literal 2 binary64) a)
4.6%1a
4.6%1(/.f64 g (*.f64 #s(literal 2 binary64) a))
4.6%1(cbrt.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)))
4.6%1g
Compiler

Compiled 16 to 19 computations (-18.8% saved)

simplify44.0ms (1.4%)

Memory
-1.7MiB live, 92.6MiB allocated; 3ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02032
12632
23532
35532
412632
586532
6627532
Stop Event
node limit
Calls
Call 1
Inputs
#s(approx (cbrt (/ g (* 2 a))) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (/.f64 (cbrt.f64 g) (cbrt.f64 a))))
(/.f64 (cbrt.f64 g) (cbrt.f64 (+.f64 a a)))
(cbrt.f64 (/.f64 g (+.f64 a a)))
(cbrt.f64 (/.f64 g #s(literal 2 binary64)))
Outputs
#s(approx (cbrt (/ g (* 2 a))) (*.f64 (cbrt.f64 #s(literal 1/2 binary64)) (/.f64 (cbrt.f64 g) (cbrt.f64 a))))
(/.f64 (cbrt.f64 g) (cbrt.f64 (+.f64 a a)))
(cbrt.f64 (/.f64 g (+.f64 a a)))
(cbrt.f64 (/.f64 g #s(literal 2 binary64)))

derivations32.0ms (1%)

Memory
-21.2MiB live, 26.2MiB allocated; 1ms collecting garbage
Stop Event
fuel
Compiler

Compiled 32 to 21 computations (34.4% saved)

preprocess27.0ms (0.9%)

Memory
2.5MiB live, 49.0MiB allocated; 7ms collecting garbage
Compiler

Compiled 76 to 54 computations (28.9% saved)

end0.0ms (0%)

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

Profiling

Loading profile data...