2-ancestry mixing, zero discriminant

Time bar (total: 2.8s)

start0.0ms (0%)

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

analyze12.0ms (0.4%)

Memory
23.8MiB live, 23.8MiB allocated; 0ms 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)

sample714.0ms (25.2%)

Memory
-2.6MiB live, 934.9MiB allocated; 166ms collecting garbage
Samples
448.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 238.0ms
ival-mult: 106.0ms (44.6% of total)
ival-div: 65.0ms (27.3% of total)
ival-cbrt: 55.0ms (23.1% of total)
exact: 7.0ms (2.9% of total)
ival-assert: 3.0ms (1.3% of total)
adjust: 2.0ms (0.8% of total)
Bogosity

explain77.0ms (2.7%)

Memory
5.7MiB live, 95.8MiB allocated; 8ms collecting garbage
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
620-1(1.5461735605435177e-241 2.9025679425957888e+75)(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-rescue340
(/.f64 g (*.f64 #s(literal 2 binary64) a))underflow34
cbrt.f64(cbrt.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)))oflow-rescue270
(/.f64 g (*.f64 #s(literal 2 binary64) a))overflow27
Confusion
Predicted +Predicted -
+611
-0194
Precision
1.0
Recall
0.9838709677419355
Confusion?
Predicted +Predicted MaybePredicted -
+6101
-00194
Precision?
1.0
Recall?
0.9838709677419355
Freqs
test
numberfreq
0195
161
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
36.0ms512×0valid
Compiler

Compiled 44 to 22 computations (50% saved)

Precisions
Click to see histograms. Total time spent on operations: 23.0ms
ival-mult: 15.0ms (66.4% of total)
ival-div: 4.0ms (17.7% of total)
ival-cbrt: 3.0ms (13.3% 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)

preprocess190.0ms (6.7%)

Memory
-3.4MiB live, 144.7MiB allocated; 15ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01842
13538
26338
311638
429138
5144138
6625638
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
0.6MiB live, 0.6MiB allocated; 0ms collecting garbage
Alt Table
Click to see full alt table
StatusAccuracyProgram
76.4%
(cbrt.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)))
Compiler

Compiled 6 to 6 computations (0% saved)

simplify108.0ms (3.8%)

Memory
-9.9MiB live, 128.4MiB allocated; 22ms 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

localize17.0ms (0.6%)

Memory
25.6MiB live, 25.6MiB allocated; 0ms 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)
accuracy15.082531161315163
(cbrt.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)))
Samples
12.0ms256×0valid
Compiler

Compiled 19 to 8 computations (57.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 6.0ms
ival-div: 2.0ms (35.2% of total)
ival-mult: 2.0ms (35.2% of total)
ival-cbrt: 2.0ms (35.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)

series25.0ms (0.9%)

Memory
-4.6MiB live, 41.7MiB allocated; 2ms 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
6.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
g
@inf
((cbrt (/ g (* 2 a))) (/ g (* 2 a)) (* 2 a))
3.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))

rewrite34.0ms (1.2%)

Memory
-3.6MiB live, 42.6MiB allocated; 3ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02879
03172
17072
021972
Stop Event
iter limit
iter limit
iter limit
unsound
iter limit
Counts
8 → 30
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)
#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
(*.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 (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 (/.f64 g a) #s(literal 2 binary64))
(/.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)
#s(approx (cbrt (/ g (* 2 a))) (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 g a))))
#s(approx (/ g (* 2 a)) (*.f64 #s(literal 1/2 binary64) (/.f64 g a)))
#s(approx (cbrt (/ g (* 2 a))) (neg.f64 (cbrt.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 g a)))))
#s(approx (* 2 a) (*.f64 a #s(literal 2 binary64)))
#s(approx (cbrt (/ g (* 2 a))) (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 g a))))

eval3.0ms (0.1%)

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

Compiled 265 to 103 computations (61.1% saved)

prune4.0ms (0.1%)

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

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New23629
Fresh000
Picked101
Done000
Total24630
Accuracy
99.5%
Counts
30 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
39.0%
(pow.f64 (/.f64 g (*.f64 a #s(literal 2 binary64))) #s(literal 1/3 binary64))
98.8%
(/.f64 (cbrt.f64 (/.f64 g #s(literal 2 binary64))) (cbrt.f64 a))
98.8%
(/.f64 (cbrt.f64 g) (cbrt.f64 (*.f64 a #s(literal 2 binary64))))
39.0%
(*.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)))
30.7%
(cbrt.f64 (/.f64 g (/.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))))))
76.4%
(cbrt.f64 (/.f64 g (+.f64 a a)))
Compiler

Compiled 126 to 90 computations (28.6% saved)

simplify161.0ms (5.7%)

Memory
-9.1MiB live, 92.4MiB allocated; 24ms collecting garbage
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 a #s(literal 2 binary64))
cost-diff0
(/.f64 g (*.f64 a #s(literal 2 binary64)))
cost-diff0
(pow.f64 (/.f64 g (*.f64 a #s(literal 2 binary64))) #s(literal 1/6 binary64))
cost-diff9
(*.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)))
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
(*.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
020107
03597
14797
27097
311297
418197
550897
6278397
7776497
0811497
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)
(/.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
(*.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/6 binary64))
(/.f64 g (*.f64 a #s(literal 2 binary64)))
g
(*.f64 a #s(literal 2 binary64))
a
#s(literal 2 binary64)
#s(literal 1/6 binary64)
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)
(/.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
(*.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)))
(cbrt.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)))
(pow.f64 (/.f64 g (*.f64 a #s(literal 2 binary64))) #s(literal 1/6 binary64))
(pow.f64 (/.f64 g (*.f64 #s(literal 2 binary64) a)) #s(literal 1/6 binary64))
(/.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/6 binary64)

localize157.0ms (5.5%)

Memory
-20.1MiB live, 215.4MiB allocated; 19ms collecting garbage
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(/.f64 g (*.f64 a #s(literal 2 binary64)))
accuracy0.0
(*.f64 a #s(literal 2 binary64))
accuracy0.26695253907376804
(*.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)))
accuracy7.448285100960583
(pow.f64 (/.f64 g (*.f64 a #s(literal 2 binary64))) #s(literal 1/6 binary64))
accuracy0.0
(/.f64 g #s(literal 2 binary64))
accuracy0.19921875
(/.f64 (cbrt.f64 (/.f64 g #s(literal 2 binary64))) (cbrt.f64 a))
accuracy0.2878113281475362
(cbrt.f64 (/.f64 g #s(literal 2 binary64)))
accuracy0.2903900390737681
(cbrt.f64 a)
accuracy0.0
(/.f64 g (*.f64 a #s(literal 2 binary64)))
accuracy0.0
(*.f64 a #s(literal 2 binary64))
accuracy7.793624089477969
(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)
accuracy6.034207404756314
(cbrt.f64 (/.f64 g (+.f64 a a)))
accuracy0.0
(*.f64 a #s(literal 2 binary64))
accuracy0.17578125
(/.f64 (cbrt.f64 g) (cbrt.f64 (*.f64 a #s(literal 2 binary64))))
accuracy0.2448425781475361
(cbrt.f64 (*.f64 a #s(literal 2 binary64)))
accuracy0.33240131837909415
(cbrt.f64 g)
Samples
111.0ms126×5exit
24.0ms130×0valid
Compiler

Compiled 109 to 22 computations (79.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 101.0ms
const: 24.0ms (23.7% of total)
ival-pow: 24.0ms (23.7% of total)
ival-div: 19.0ms (18.8% of total)
adjust: 12.0ms (11.9% of total)
ival-mult: 12.0ms (11.9% of total)
ival-cbrt: 9.0ms (8.9% of total)
ival-add: 1.0ms (1% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series186.0ms (6.6%)

Memory
4.8MiB live, 284.1MiB allocated; 32ms collecting garbage
Counts
15 → 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)))
(/.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)
(*.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/6 binary64))
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)) (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 (* (pow (/ g (* a 2)) 1/6) (pow (/ g (* a 2)) 1/6)) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (pow (/ g (* a 2)) 1/6) #s(hole binary64 (exp (* 1/6 (+ (log g) (log (/ 1/2 a)))))))
#s(approx (pow (/ g (* a 2)) 1/6) #s(hole binary64 (exp (* 1/6 (+ (log (/ 1/2 a)) (* -1 (log (/ 1 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)) (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 (* (pow (/ g (* a 2)) 1/6) (pow (/ g (* a 2)) 1/6)) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1/2)))))
#s(approx (pow (/ g (* a 2)) 1/6) #s(hole binary64 (exp (* 1/6 (+ (log (/ -1/2 a)) (* -1 (log (/ -1 g))))))))
#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 (pow (/ g (* a 2)) 1/6) #s(hole binary64 (exp (* 1/6 (+ (log (* 1/2 g)) (* -1 (log a)))))))
#s(approx (pow (/ g (* a 2)) 1/6) #s(hole binary64 (exp (* 1/6 (+ (log (* 1/2 g)) (log (/ 1 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 a) #s(hole binary64 (* -1 (* (cbrt a) (cbrt -1)))))
#s(approx (* (pow (/ g (* a 2)) 1/6) (pow (/ g (* a 2)) 1/6)) #s(hole binary64 (* (cbrt (/ g a)) (* (cbrt -1) (cbrt -1/2)))))
#s(approx (pow (/ g (* a 2)) 1/6) #s(hole binary64 (exp (* 1/6 (+ (log (* -1/2 g)) (log (/ -1 a)))))))
Calls

6 calls:

TimeVariablePointExpression
45.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)) (cbrt a)) (cbrt (/ g 2)) (/ g 2) (cbrt a) (* (pow (/ g (* a 2)) 1/6) (pow (/ g (* a 2)) 1/6)) (pow (/ g (* a 2)) 1/6))
42.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)) (cbrt a)) (cbrt (/ g 2)) (/ g 2) (cbrt a) (* (pow (/ g (* a 2)) 1/6) (pow (/ g (* a 2)) 1/6)) (pow (/ g (* a 2)) 1/6))
34.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)) (cbrt a)) (cbrt (/ g 2)) (/ g 2) (cbrt a) (* (pow (/ g (* a 2)) 1/6) (pow (/ g (* a 2)) 1/6)) (pow (/ g (* a 2)) 1/6))
20.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)) (cbrt a)) (cbrt (/ g 2)) (/ g 2) (cbrt a) (* (pow (/ g (* a 2)) 1/6) (pow (/ g (* a 2)) 1/6)) (pow (/ g (* a 2)) 1/6))
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)) (cbrt a)) (cbrt (/ g 2)) (/ g 2) (cbrt a) (* (pow (/ g (* a 2)) 1/6) (pow (/ g (* a 2)) 1/6)) (pow (/ g (* a 2)) 1/6))

rewrite42.0ms (1.5%)

Memory
9.5MiB live, 56.0MiB allocated; 2ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0143577
0162480
0484480
Stop Event
iter limit
iter limit
iter limit
unsound
iter limit
Counts
48 → 108
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)))
(/.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)
(*.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/6 binary64))
#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)) (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 (* (pow (/ g (* a 2)) 1/6) (pow (/ g (* a 2)) 1/6)) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (pow (/ g (* a 2)) 1/6) #s(hole binary64 (exp (* 1/6 (+ (log g) (log (/ 1/2 a)))))))
#s(approx (pow (/ g (* a 2)) 1/6) #s(hole binary64 (exp (* 1/6 (+ (log (/ 1/2 a)) (* -1 (log (/ 1 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)) (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 (* (pow (/ g (* a 2)) 1/6) (pow (/ g (* a 2)) 1/6)) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1/2)))))
#s(approx (pow (/ g (* a 2)) 1/6) #s(hole binary64 (exp (* 1/6 (+ (log (/ -1/2 a)) (* -1 (log (/ -1 g))))))))
#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 (pow (/ g (* a 2)) 1/6) #s(hole binary64 (exp (* 1/6 (+ (log (* 1/2 g)) (* -1 (log a)))))))
#s(approx (pow (/ g (* a 2)) 1/6) #s(hole binary64 (exp (* 1/6 (+ (log (* 1/2 g)) (log (/ 1 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 a) #s(hole binary64 (* -1 (* (cbrt a) (cbrt -1)))))
#s(approx (* (pow (/ g (* a 2)) 1/6) (pow (/ g (* a 2)) 1/6)) #s(hole binary64 (* (cbrt (/ g a)) (* (cbrt -1) (cbrt -1/2)))))
#s(approx (pow (/ g (* a 2)) 1/6) #s(hole binary64 (exp (* 1/6 (+ (log (* -1/2 g)) (log (/ -1 a)))))))
Outputs
(*.f64 (neg.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64))) (neg.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64))))
(*.f64 (fabs.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64))) (fabs.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64))))
(*.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64)) (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64)))
(pow.f64 (*.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) (/.f64 (/.f64 g a) #s(literal 2 binary64))) #s(literal 1/6 binary64))
(pow.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64)) #s(literal 2 binary64))
(pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/3 binary64))
(/.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 (*.f64 #s(literal 2 binary64) a))))
(/.f64 (cbrt.f64 g) (cbrt.f64 (*.f64 #s(literal 2 binary64) a)))
(cbrt.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64))) #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)))
(*.f64 (cbrt.f64 #s(literal 2 binary64)) (cbrt.f64 a))
(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 (neg.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64))) (neg.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64))))
(*.f64 (fabs.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64))) (fabs.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64))))
(*.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64)) (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64)))
(pow.f64 (*.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) (/.f64 (/.f64 g a) #s(literal 2 binary64))) #s(literal 1/6 binary64))
(pow.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64)) #s(literal 2 binary64))
(pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/3 binary64))
(/.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 (*.f64 #s(literal 2 binary64) a))))
(/.f64 (cbrt.f64 g) (cbrt.f64 (*.f64 #s(literal 2 binary64) a)))
(cbrt.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64))) #s(literal 1/3 binary64)))
(/.f64 (neg.f64 g) (neg.f64 (*.f64 #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 (neg.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64))) (neg.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64))))
(*.f64 (fabs.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64))) (fabs.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64))))
(*.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64)) (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64)))
(pow.f64 (*.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) (/.f64 (/.f64 g a) #s(literal 2 binary64))) #s(literal 1/6 binary64))
(pow.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64)) #s(literal 2 binary64))
(pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/3 binary64))
(/.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 (*.f64 #s(literal 2 binary64) a))))
(/.f64 (cbrt.f64 g) (cbrt.f64 (*.f64 #s(literal 2 binary64) a)))
(cbrt.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64))) #s(literal 1/3 binary64)))
(/.f64 (neg.f64 g) (neg.f64 (*.f64 #s(literal 2 binary64) a)))
(/.f64 (/.f64 g a) #s(literal 2 binary64))
(/.f64 g (*.f64 #s(literal 2 binary64) a))
(/.f64 (neg.f64 (cbrt.f64 (/.f64 g #s(literal 2 binary64)))) (neg.f64 (cbrt.f64 a)))
(/.f64 (cbrt.f64 (/.f64 g #s(literal 2 binary64))) (cbrt.f64 a))
(cbrt.f64 (/.f64 (/.f64 g #s(literal 2 binary64)) a))
(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)
(*.f64 (neg.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64))) (neg.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64))))
(*.f64 (fabs.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64))) (fabs.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64))))
(*.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64)) (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64)))
(pow.f64 (*.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) (/.f64 (/.f64 g a) #s(literal 2 binary64))) #s(literal 1/6 binary64))
(pow.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64)) #s(literal 2 binary64))
(pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/3 binary64))
(/.f64 (neg.f64 (cbrt.f64 g)) (neg.f64 (cbrt.f64 (*.f64 #s(literal 2 binary64) a))))
(/.f64 (cbrt.f64 g) (cbrt.f64 (*.f64 #s(literal 2 binary64) a)))
(cbrt.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64))) #s(literal 1/3 binary64)))
(*.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/12 binary64)) (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/12 binary64)))
(pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64))
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64))) #s(literal 1/6 binary64)))
#s(approx (pow (/ g (* a 2)) 1/3) (*.f64 (pow.f64 (cbrt.f64 #s(literal 2 binary64)) #s(literal -1 binary64)) (cbrt.f64 (/.f64 g a))))
#s(approx (cbrt g) (cbrt.f64 g))
#s(approx (pow (/ g (* a 2)) 1/3) (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 g a))))
#s(approx (/ g (* a 2)) (*.f64 #s(literal 1/2 binary64) (/.f64 g a)))
#s(approx (pow (/ g (* a 2)) 1/3) (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 g a))))
#s(approx (/ g (* a 2)) (*.f64 #s(literal 1/2 binary64) (/.f64 g a)))
#s(approx (/ (cbrt (/ g 2)) (cbrt a)) (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 g a))))
#s(approx (cbrt (/ g 2)) (cbrt.f64 (*.f64 #s(literal 1/2 binary64) g)))
#s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))
#s(approx (pow (/ g (* a 2)) 1/3) (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 g a))))
#s(approx (pow (/ g (* a 2)) 1/6) (pow.f64 (exp.f64 #s(literal 1/6 binary64)) (log.f64 (*.f64 g (/.f64 #s(literal 1/2 binary64) a)))))
#s(approx (pow (/ g (* a 2)) 1/6) (pow.f64 (exp.f64 #s(literal 1/6 binary64)) (fma.f64 (neg.f64 (log.f64 g)) #s(literal -1 binary64) (log.f64 (/.f64 #s(literal 1/2 binary64) a)))))
#s(approx (pow (/ g (* a 2)) 1/3) (neg.f64 (cbrt.f64 (*.f64 (/.f64 g a) #s(literal -1/2 binary64)))))
#s(approx (cbrt g) (neg.f64 (cbrt.f64 (*.f64 g #s(literal -1 binary64)))))
#s(approx (pow (/ g (* a 2)) 1/3) (neg.f64 (cbrt.f64 (*.f64 (/.f64 g a) #s(literal -1/2 binary64)))))
#s(approx (pow (/ g (* a 2)) 1/3) (neg.f64 (cbrt.f64 (*.f64 (/.f64 g a) #s(literal -1/2 binary64)))))
#s(approx (/ (cbrt (/ g 2)) (cbrt a)) (neg.f64 (cbrt.f64 (*.f64 (/.f64 g a) #s(literal -1/2 binary64)))))
#s(approx (cbrt (/ g 2)) (neg.f64 (cbrt.f64 (*.f64 #s(literal -1/2 binary64) g))))
#s(approx (pow (/ g (* a 2)) 1/3) (neg.f64 (cbrt.f64 (*.f64 (/.f64 g a) #s(literal -1/2 binary64)))))
#s(approx (pow (/ g (* a 2)) 1/6) (pow.f64 (exp.f64 #s(literal 1/6 binary64)) (fma.f64 (log.f64 (/.f64 #s(literal -1 binary64) g)) #s(literal -1 binary64) (log.f64 (/.f64 #s(literal -1/2 binary64) a)))))
#s(approx (cbrt (* a 2)) (cbrt.f64 (*.f64 #s(literal 2 binary64) a)))
#s(approx (* a 2) (*.f64 #s(literal 2 binary64) a))
#s(approx (* a 2) (*.f64 #s(literal 2 binary64) a))
#s(approx (cbrt a) (cbrt.f64 a))
#s(approx (pow (/ g (* a 2)) 1/6) (pow.f64 (exp.f64 #s(literal 1/6 binary64)) (fma.f64 (log.f64 a) #s(literal -1 binary64) (log.f64 (*.f64 #s(literal 1/2 binary64) g)))))
#s(approx (pow (/ g (* a 2)) 1/6) (pow.f64 (exp.f64 #s(literal 1/6 binary64)) (fma.f64 (log.f64 a) #s(literal -1 binary64) (log.f64 (*.f64 #s(literal 1/2 binary64) g)))))
#s(approx (pow (/ g (* a 2)) 1/3) (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 g a))))
#s(approx (cbrt (* a 2)) (neg.f64 (cbrt.f64 (*.f64 a #s(literal -2 binary64)))))
#s(approx (pow (/ g (* a 2)) 1/3) (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 g a))))
#s(approx (pow (/ g (* a 2)) 1/3) (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 g a))))
#s(approx (cbrt a) (neg.f64 (cbrt.f64 (*.f64 a #s(literal -1 binary64)))))
#s(approx (pow (/ g (* a 2)) 1/3) (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 g a))))
#s(approx (pow (/ g (* a 2)) 1/6) (pow.f64 (exp.f64 #s(literal 1/6 binary64)) (log.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) g) (/.f64 #s(literal -1 binary64) a)))))

eval8.0ms (0.3%)

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

Compiled 1 198 to 226 computations (81.1% saved)

prune6.0ms (0.2%)

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

10 alts after pruning (9 fresh and 1 done)

PrunedKeptTotal
New76884
Fresh011
Picked415
Done000
Total801090
Accuracy
99.7%
Counts
90 → 10
Alt Table
Click to see full alt table
StatusAccuracyProgram
39.0%
(pow.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64)) #s(literal 2 binary64))
39.0%
(pow.f64 (/.f64 g (+.f64 a a)) #s(literal 1/3 binary64))
49.7%
(/.f64 (pow.f64 g #s(literal 1/3 binary64)) (cbrt.f64 (*.f64 a #s(literal 2 binary64))))
98.3%
(/.f64 (/.f64 (cbrt.f64 g) (cbrt.f64 #s(literal 2 binary64))) (cbrt.f64 a))
98.8%
(/.f64 (cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))) (cbrt.f64 a))
98.2%
(/.f64 (cbrt.f64 g) (*.f64 (cbrt.f64 a) (cbrt.f64 #s(literal 2 binary64))))
98.8%
(/.f64 (cbrt.f64 g) (cbrt.f64 (+.f64 a a)))
30.7%
(cbrt.f64 (/.f64 g (/.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))))))
76.4%
(cbrt.f64 (/.f64 g (+.f64 a a)))
75.6%
#s(approx (pow (/ g (* a 2)) 1/3) (*.f64 (pow.f64 (cbrt.f64 #s(literal 2 binary64)) #s(literal -1 binary64)) (cbrt.f64 (/.f64 g a))))
Compiler

Compiled 198 to 165 computations (16.7% saved)

simplify91.0ms (3.2%)

Memory
-13.3MiB live, 79.4MiB allocated; 5ms collecting garbage
Localize:

Found 19 expressions of interest:

NewMetricScoreProgram
cost-diff0
(cbrt.f64 #s(literal 2 binary64))
cost-diff0
(cbrt.f64 g)
cost-diff0
(/.f64 (cbrt.f64 g) (cbrt.f64 #s(literal 2 binary64)))
cost-diff0
(/.f64 (/.f64 (cbrt.f64 g) (cbrt.f64 #s(literal 2 binary64))) (cbrt.f64 a))
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 a #s(literal 2 binary64))
cost-diff0
(cbrt.f64 (*.f64 a #s(literal 2 binary64)))
cost-diff0
(/.f64 (pow.f64 g #s(literal 1/3 binary64)) (cbrt.f64 (*.f64 a #s(literal 2 binary64))))
cost-diffInfinite
(pow.f64 g #s(literal 1/3 binary64))
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 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
020102
03699
14499
25599
37599
411999
534099
6204299
0822699
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
(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 (pow.f64 g #s(literal 1/3 binary64)) (cbrt.f64 (*.f64 a #s(literal 2 binary64))))
(pow.f64 g #s(literal 1/3 binary64))
g
#s(literal 1/3 binary64)
(cbrt.f64 (*.f64 a #s(literal 2 binary64)))
(*.f64 a #s(literal 2 binary64))
a
#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)
(/.f64 (/.f64 (cbrt.f64 g) (cbrt.f64 #s(literal 2 binary64))) (cbrt.f64 a))
(/.f64 (cbrt.f64 g) (cbrt.f64 #s(literal 2 binary64)))
(cbrt.f64 g)
g
(cbrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
(cbrt.f64 a)
a
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
(pow.f64 (/.f64 g (+.f64 a a)) #s(literal 1/3 binary64))
(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
#s(literal 1/3 binary64)
(/.f64 (pow.f64 g #s(literal 1/3 binary64)) (cbrt.f64 (*.f64 a #s(literal 2 binary64))))
(/.f64 (cbrt.f64 g) (cbrt.f64 (*.f64 #s(literal 2 binary64) a)))
(pow.f64 g #s(literal 1/3 binary64))
(cbrt.f64 g)
g
#s(literal 1/3 binary64)
(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)
(/.f64 (cbrt.f64 g) (*.f64 (cbrt.f64 a) (cbrt.f64 #s(literal 2 binary64))))
(/.f64 (cbrt.f64 g) (*.f64 (cbrt.f64 #s(literal 2 binary64)) (cbrt.f64 a)))
(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)
(/.f64 (/.f64 (cbrt.f64 g) (cbrt.f64 #s(literal 2 binary64))) (cbrt.f64 a))
(/.f64 (cbrt.f64 g) (*.f64 (cbrt.f64 #s(literal 2 binary64)) (cbrt.f64 a)))
(/.f64 (cbrt.f64 g) (cbrt.f64 #s(literal 2 binary64)))
(cbrt.f64 g)
g
(cbrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
(cbrt.f64 a)
a

localize171.0ms (6%)

Memory
-8.4MiB live, 124.8MiB allocated; 170ms collecting garbage
Localize:

Found 19 expressions of interest:

NewMetricScoreProgram
accuracy0.3515625
(/.f64 (/.f64 (cbrt.f64 g) (cbrt.f64 #s(literal 2 binary64))) (cbrt.f64 a))
accuracy0.5462875976844203
(cbrt.f64 a)
accuracy0.5922051269897464
(cbrt.f64 g)
accuracy1.0
(cbrt.f64 #s(literal 2 binary64))
accuracy0.33822250976844204
(/.f64 (cbrt.f64 g) (*.f64 (cbrt.f64 a) (cbrt.f64 #s(literal 2 binary64))))
accuracy0.5462875976844203
(cbrt.f64 a)
accuracy0.5922051269897464
(cbrt.f64 g)
accuracy1.0
(cbrt.f64 #s(literal 2 binary64))
accuracy0.0
(*.f64 a #s(literal 2 binary64))
accuracy0.33822250976844204
(/.f64 (pow.f64 g #s(literal 1/3 binary64)) (cbrt.f64 (*.f64 a #s(literal 2 binary64))))
accuracy0.5248414062950725
(cbrt.f64 (*.f64 a #s(literal 2 binary64)))
accuracy32.01490857786097
(pow.f64 g #s(literal 1/3 binary64))
accuracy0.0
(/.f64 g (+.f64 a a))
accuracy0.0
(+.f64 a a)
accuracy38.890686089693794
(pow.f64 (/.f64 g (+.f64 a a)) #s(literal 1/3 binary64))
accuracy0.0
(+.f64 a a)
accuracy0.33822250976844204
(/.f64 (cbrt.f64 g) (cbrt.f64 (+.f64 a a)))
accuracy0.5248414062950725
(cbrt.f64 (+.f64 a a))
accuracy0.5922051269897464
(cbrt.f64 g)
Samples
140.0ms256×0valid
Compiler

Compiled 104 to 21 computations (79.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 116.0ms
ival-cbrt: 90.0ms (77.3% of total)
const: 12.0ms (10.3% of total)
ival-div: 9.0ms (7.7% of total)
ival-mult: 3.0ms (2.6% of total)
ival-add: 1.0ms (0.9% 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)

series77.0ms (2.7%)

Memory
38.5MiB live, 136.2MiB allocated; 42ms collecting garbage
Counts
16 → 30
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 (/.f64 g (+.f64 a a)) #s(literal 1/3 binary64))
(/.f64 g (+.f64 a a))
(pow.f64 g #s(literal 1/3 binary64))
(/.f64 (pow.f64 g #s(literal 1/3 binary64)) (cbrt.f64 (*.f64 a #s(literal 2 binary64))))
(cbrt.f64 (*.f64 a #s(literal 2 binary64)))
(*.f64 a #s(literal 2 binary64))
(/.f64 (cbrt.f64 g) (*.f64 (cbrt.f64 a) (cbrt.f64 #s(literal 2 binary64))))
(*.f64 (cbrt.f64 a) (cbrt.f64 #s(literal 2 binary64)))
(cbrt.f64 a)
(/.f64 (/.f64 (cbrt.f64 g) (cbrt.f64 #s(literal 2 binary64))) (cbrt.f64 a))
(/.f64 (cbrt.f64 g) (cbrt.f64 #s(literal 2 binary64)))
(cbrt.f64 #s(literal 2 binary64))
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 (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 (pow g 1/3) #s(hole binary64 (cbrt g)))
#s(approx (/ (pow g 1/3) (cbrt (* a 2))) #s(hole binary64 (* (cbrt (/ g a)) (/ 1 (cbrt 2)))))
#s(approx (/ (cbrt g) (* (cbrt a) (cbrt 2))) #s(hole binary64 (* (cbrt (/ g a)) (/ 1 (cbrt 2)))))
#s(approx (/ (/ (cbrt g) (cbrt 2)) (cbrt a)) #s(hole binary64 (* (cbrt (/ g a)) (/ 1 (cbrt 2)))))
#s(approx (/ (cbrt g) (cbrt 2)) #s(hole binary64 (* (cbrt g) (/ 1 (cbrt 2)))))
#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 (pow (/ g (+ a a)) 1/3) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1/2)))))
#s(approx (pow g 1/3) #s(hole binary64 (* -1 (* (cbrt g) (cbrt -1)))))
#s(approx (/ (pow g 1/3) (cbrt (* a 2))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt 2))))))
#s(approx (/ (cbrt g) (* (cbrt a) (cbrt 2))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt 2))))))
#s(approx (/ (/ (cbrt g) (cbrt 2)) (cbrt a)) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt 2))))))
#s(approx (/ (cbrt g) (cbrt 2)) #s(hole binary64 (* -1 (* (cbrt g) (/ (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 (cbrt (* a 2)) #s(hole binary64 (* (cbrt a) (cbrt 2))))
#s(approx (* a 2) #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) (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 (/ g (+ a a)) 1/3) #s(hole binary64 (* (cbrt (/ g a)) (* (cbrt -1) (cbrt -1/2)))))
#s(approx (/ (pow g 1/3) (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 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
27.0ms
a
@0
((/ (cbrt g) (cbrt (+ a a))) (cbrt g) (cbrt (+ a a)) (+ a a) (pow (/ g (+ a a)) 1/3) (/ g (+ a a)) (pow g 1/3) (/ (pow g 1/3) (cbrt (* a 2))) (cbrt (* a 2)) (* a 2) (/ (cbrt g) (* (cbrt a) (cbrt 2))) (* (cbrt a) (cbrt 2)) (cbrt a) (/ (/ (cbrt g) (cbrt 2)) (cbrt a)) (/ (cbrt g) (cbrt 2)) (cbrt 2))
20.0ms
g
@-inf
((/ (cbrt g) (cbrt (+ a a))) (cbrt g) (cbrt (+ a a)) (+ a a) (pow (/ g (+ a a)) 1/3) (/ g (+ a a)) (pow g 1/3) (/ (pow g 1/3) (cbrt (* a 2))) (cbrt (* a 2)) (* a 2) (/ (cbrt g) (* (cbrt a) (cbrt 2))) (* (cbrt a) (cbrt 2)) (cbrt a) (/ (/ (cbrt g) (cbrt 2)) (cbrt a)) (/ (cbrt g) (cbrt 2)) (cbrt 2))
10.0ms
a
@-inf
((/ (cbrt g) (cbrt (+ a a))) (cbrt g) (cbrt (+ a a)) (+ a a) (pow (/ g (+ a a)) 1/3) (/ g (+ a a)) (pow g 1/3) (/ (pow g 1/3) (cbrt (* a 2))) (cbrt (* a 2)) (* a 2) (/ (cbrt g) (* (cbrt a) (cbrt 2))) (* (cbrt a) (cbrt 2)) (cbrt a) (/ (/ (cbrt g) (cbrt 2)) (cbrt a)) (/ (cbrt g) (cbrt 2)) (cbrt 2))
7.0ms
g
@0
((/ (cbrt g) (cbrt (+ a a))) (cbrt g) (cbrt (+ a a)) (+ a a) (pow (/ g (+ a a)) 1/3) (/ g (+ a a)) (pow g 1/3) (/ (pow g 1/3) (cbrt (* a 2))) (cbrt (* a 2)) (* a 2) (/ (cbrt g) (* (cbrt a) (cbrt 2))) (* (cbrt a) (cbrt 2)) (cbrt a) (/ (/ (cbrt g) (cbrt 2)) (cbrt a)) (/ (cbrt g) (cbrt 2)) (cbrt 2))
6.0ms
a
@inf
((/ (cbrt g) (cbrt (+ a a))) (cbrt g) (cbrt (+ a a)) (+ a a) (pow (/ g (+ a a)) 1/3) (/ g (+ a a)) (pow g 1/3) (/ (pow g 1/3) (cbrt (* a 2))) (cbrt (* a 2)) (* a 2) (/ (cbrt g) (* (cbrt a) (cbrt 2))) (* (cbrt a) (cbrt 2)) (cbrt a) (/ (/ (cbrt g) (cbrt 2)) (cbrt a)) (/ (cbrt g) (cbrt 2)) (cbrt 2))

rewrite37.0ms (1.3%)

Memory
-12.1MiB live, 32.5MiB allocated; 13ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0103489
0124395
0251395
Stop Event
iter limit
iter limit
iter limit
unsound
iter limit
Counts
46 → 114
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 (/.f64 g (+.f64 a a)) #s(literal 1/3 binary64))
(/.f64 g (+.f64 a a))
(pow.f64 g #s(literal 1/3 binary64))
(/.f64 (pow.f64 g #s(literal 1/3 binary64)) (cbrt.f64 (*.f64 a #s(literal 2 binary64))))
(cbrt.f64 (*.f64 a #s(literal 2 binary64)))
(*.f64 a #s(literal 2 binary64))
(/.f64 (cbrt.f64 g) (*.f64 (cbrt.f64 a) (cbrt.f64 #s(literal 2 binary64))))
(*.f64 (cbrt.f64 a) (cbrt.f64 #s(literal 2 binary64)))
(cbrt.f64 a)
(/.f64 (/.f64 (cbrt.f64 g) (cbrt.f64 #s(literal 2 binary64))) (cbrt.f64 a))
(/.f64 (cbrt.f64 g) (cbrt.f64 #s(literal 2 binary64)))
(cbrt.f64 #s(literal 2 binary64))
#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 (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 (pow g 1/3) #s(hole binary64 (cbrt g)))
#s(approx (/ (pow g 1/3) (cbrt (* a 2))) #s(hole binary64 (* (cbrt (/ g a)) (/ 1 (cbrt 2)))))
#s(approx (/ (cbrt g) (* (cbrt a) (cbrt 2))) #s(hole binary64 (* (cbrt (/ g a)) (/ 1 (cbrt 2)))))
#s(approx (/ (/ (cbrt g) (cbrt 2)) (cbrt a)) #s(hole binary64 (* (cbrt (/ g a)) (/ 1 (cbrt 2)))))
#s(approx (/ (cbrt g) (cbrt 2)) #s(hole binary64 (* (cbrt g) (/ 1 (cbrt 2)))))
#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 (pow (/ g (+ a a)) 1/3) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1/2)))))
#s(approx (pow g 1/3) #s(hole binary64 (* -1 (* (cbrt g) (cbrt -1)))))
#s(approx (/ (pow g 1/3) (cbrt (* a 2))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt 2))))))
#s(approx (/ (cbrt g) (* (cbrt a) (cbrt 2))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt 2))))))
#s(approx (/ (/ (cbrt g) (cbrt 2)) (cbrt a)) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt 2))))))
#s(approx (/ (cbrt g) (cbrt 2)) #s(hole binary64 (* -1 (* (cbrt g) (/ (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 (cbrt (* a 2)) #s(hole binary64 (* (cbrt a) (cbrt 2))))
#s(approx (* a 2) #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) (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 (/ g (+ a a)) 1/3) #s(hole binary64 (* (cbrt (/ g a)) (* (cbrt -1) (cbrt -1/2)))))
#s(approx (/ (pow g 1/3) (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 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
(*.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 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64)))
(/.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 (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 (cbrt.f64 a) (cbrt.f64 #s(literal 2 binary64)))
(*.f64 (cbrt.f64 #s(literal 2 binary64)) (cbrt.f64 a))
(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 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64)))
(/.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 g (*.f64 #s(literal 2 binary64) a))
(*.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 (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 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64)))
(/.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 (cbrt.f64 a) (cbrt.f64 #s(literal 2 binary64)))
(*.f64 (cbrt.f64 #s(literal 2 binary64)) (cbrt.f64 a))
(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 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64)))
(/.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 (cbrt.f64 a) (cbrt.f64 #s(literal 2 binary64)))
(*.f64 (cbrt.f64 #s(literal 2 binary64)) (cbrt.f64 a))
(pow.f64 (*.f64 #s(literal 2 binary64) a) #s(literal 1/3 binary64))
(cbrt.f64 (*.f64 #s(literal 2 binary64) a))
(pow.f64 a #s(literal 1/3 binary64))
(cbrt.f64 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 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64)))
(/.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 (cbrt.f64 g)) (neg.f64 (cbrt.f64 #s(literal 2 binary64))))
(/.f64 (cbrt.f64 g) (cbrt.f64 #s(literal 2 binary64)))
(cbrt.f64 (/.f64 g #s(literal 2 binary64)))
(pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64))
(cbrt.f64 #s(literal 2 binary64))
#s(approx (/ (pow g 1/3) (cbrt (* a 2))) (*.f64 (pow.f64 (cbrt.f64 #s(literal 2 binary64)) #s(literal -1 binary64)) (cbrt.f64 (/.f64 g a))))
#s(approx (pow g 1/3) (cbrt.f64 g))
#s(approx (/ (pow g 1/3) (cbrt (* a 2))) (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 g a))))
#s(approx (/ g (+ a a)) (*.f64 #s(literal 1/2 binary64) (/.f64 g a)))
#s(approx (pow g 1/3) (cbrt.f64 g))
#s(approx (/ (pow g 1/3) (cbrt (* a 2))) (*.f64 (pow.f64 (cbrt.f64 #s(literal 2 binary64)) #s(literal -1 binary64)) (cbrt.f64 (/.f64 g a))))
#s(approx (/ (pow g 1/3) (cbrt (* a 2))) (*.f64 (pow.f64 (cbrt.f64 #s(literal 2 binary64)) #s(literal -1 binary64)) (cbrt.f64 (/.f64 g a))))
#s(approx (/ (pow g 1/3) (cbrt (* a 2))) (*.f64 (pow.f64 (cbrt.f64 #s(literal 2 binary64)) #s(literal -1 binary64)) (cbrt.f64 (/.f64 g a))))
#s(approx (/ (cbrt g) (cbrt 2)) (*.f64 (pow.f64 (cbrt.f64 #s(literal 2 binary64)) #s(literal -1 binary64)) (cbrt.f64 g)))
#s(approx (/ (pow g 1/3) (cbrt (* a 2))) (neg.f64 (cbrt.f64 (*.f64 (/.f64 g a) #s(literal -1/2 binary64)))))
#s(approx (pow g 1/3) (neg.f64 (cbrt.f64 (*.f64 g #s(literal -1 binary64)))))
#s(approx (/ (pow g 1/3) (cbrt (* a 2))) (neg.f64 (cbrt.f64 (*.f64 (/.f64 g a) #s(literal -1/2 binary64)))))
#s(approx (pow g 1/3) (neg.f64 (cbrt.f64 (*.f64 g #s(literal -1 binary64)))))
#s(approx (/ (pow g 1/3) (cbrt (* a 2))) (neg.f64 (cbrt.f64 (*.f64 (/.f64 g a) #s(literal -1/2 binary64)))))
#s(approx (/ (pow g 1/3) (cbrt (* a 2))) (neg.f64 (cbrt.f64 (*.f64 (/.f64 g a) #s(literal -1/2 binary64)))))
#s(approx (/ (pow g 1/3) (cbrt (* a 2))) (neg.f64 (cbrt.f64 (*.f64 (/.f64 g a) #s(literal -1/2 binary64)))))
#s(approx (/ (cbrt g) (cbrt 2)) (neg.f64 (*.f64 (cbrt.f64 #s(literal -1/2 binary64)) (cbrt.f64 g))))
#s(approx (* (cbrt a) (cbrt 2)) (cbrt.f64 (*.f64 #s(literal 2 binary64) a)))
#s(approx (* a 2) (*.f64 #s(literal 2 binary64) a))
#s(approx (* (cbrt a) (cbrt 2)) (cbrt.f64 (*.f64 #s(literal 2 binary64) a)))
#s(approx (* a 2) (*.f64 #s(literal 2 binary64) a))
#s(approx (* (cbrt a) (cbrt 2)) (cbrt.f64 (*.f64 #s(literal 2 binary64) a)))
#s(approx (cbrt a) (cbrt.f64 a))
#s(approx (/ (pow g 1/3) (cbrt (* a 2))) (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 g a))))
#s(approx (* (cbrt a) (cbrt 2)) (neg.f64 (cbrt.f64 (*.f64 a #s(literal -2 binary64)))))
#s(approx (/ (pow g 1/3) (cbrt (* a 2))) (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 g a))))
#s(approx (/ (pow g 1/3) (cbrt (* a 2))) (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 g a))))
#s(approx (* (cbrt a) (cbrt 2)) (neg.f64 (cbrt.f64 (*.f64 a #s(literal -2 binary64)))))
#s(approx (* (cbrt a) (cbrt 2)) (neg.f64 (cbrt.f64 (*.f64 a #s(literal -2 binary64)))))
#s(approx (cbrt a) (neg.f64 (cbrt.f64 (*.f64 a #s(literal -1 binary64)))))

eval6.0ms (0.2%)

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

Compiled 722 to 173 computations (76% saved)

prune9.0ms (0.3%)

Memory
-30.3MiB live, 17.7MiB allocated; 3ms collecting garbage
Pruning

13 alts after pruning (8 fresh and 5 done)

PrunedKeptTotal
New63568
Fresh134
Picked145
Done011
Total651378
Accuracy
99.8%
Counts
78 → 13
Alt Table
Click to see full alt table
StatusAccuracyProgram
39.0%
(pow.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64)) #s(literal 2 binary64))
39.0%
(pow.f64 (/.f64 g (+.f64 a a)) #s(literal 1/3 binary64))
49.7%
(/.f64 (pow.f64 g #s(literal 1/3 binary64)) (cbrt.f64 (+.f64 a a)))
98.7%
(/.f64 (/.f64 (cbrt.f64 g) (pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64))) (cbrt.f64 a))
98.3%
(/.f64 (/.f64 (cbrt.f64 g) (cbrt.f64 #s(literal 2 binary64))) (cbrt.f64 a))
75.6%
(/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64)))
98.8%
(/.f64 (cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))) (cbrt.f64 a))
98.8%
(/.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.8%
(/.f64 (cbrt.f64 g) (cbrt.f64 (+.f64 a a)))
98.7%
(/.f64 #s(approx (/ (cbrt g) (cbrt 2)) (neg.f64 (*.f64 (cbrt.f64 #s(literal -1/2 binary64)) (cbrt.f64 g)))) (cbrt.f64 a))
30.7%
(cbrt.f64 (/.f64 g (/.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))))))
76.4%
(cbrt.f64 (/.f64 g (+.f64 a a)))
Compiler

Compiled 214 to 183 computations (14.5% saved)

simplify128.0ms (4.5%)

Memory
0.4MiB live, 188.3MiB allocated; 22ms collecting garbage
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
cost-diff1
(fma.f64 a a (-.f64 (*.f64 a a) (*.f64 a a)))
cost-diff2
(+.f64 (pow.f64 a #s(literal 3 binary64)) (pow.f64 a #s(literal 3 binary64)))
cost-diff6
(-.f64 (*.f64 a a) (*.f64 a a))
cost-diff6
(/.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))))
cost-diff0
(*.f64 (cbrt.f64 #s(literal -1/2 binary64)) (cbrt.f64 g))
cost-diff0
(neg.f64 (*.f64 (cbrt.f64 #s(literal -1/2 binary64)) (cbrt.f64 g)))
cost-diff0
#s(approx (/ (cbrt g) (cbrt 2)) (neg.f64 (*.f64 (cbrt.f64 #s(literal -1/2 binary64)) (cbrt.f64 g))))
cost-diff0
(/.f64 #s(approx (/ (cbrt g) (cbrt 2)) (neg.f64 (*.f64 (cbrt.f64 #s(literal -1/2 binary64)) (cbrt.f64 g)))) (cbrt.f64 a))
cost-diff0
(/.f64 g a)
cost-diff0
(/.f64 (/.f64 g a) #s(literal 2 binary64))
cost-diff0
(pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64))
cost-diff3
(pow.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64)) #s(literal 2 binary64))
cost-diff0
(+.f64 a a)
cost-diff0
(cbrt.f64 (+.f64 a a))
cost-diff0
(/.f64 (pow.f64 g #s(literal 1/3 binary64)) (cbrt.f64 (+.f64 a a)))
cost-diffInfinite
(pow.f64 g #s(literal 1/3 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))
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
039222
064163
198163
2243157
31659157
09501157
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(/.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
(/.f64 (pow.f64 g #s(literal 1/3 binary64)) (cbrt.f64 (+.f64 a a)))
(pow.f64 g #s(literal 1/3 binary64))
g
#s(literal 1/3 binary64)
(cbrt.f64 (+.f64 a a))
(+.f64 a a)
a
(pow.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64)) #s(literal 2 binary64))
(pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64))
(/.f64 (/.f64 g a) #s(literal 2 binary64))
(/.f64 g a)
g
a
#s(literal 2 binary64)
#s(literal 1/6 binary64)
(/.f64 #s(approx (/ (cbrt g) (cbrt 2)) (neg.f64 (*.f64 (cbrt.f64 #s(literal -1/2 binary64)) (cbrt.f64 g)))) (cbrt.f64 a))
#s(approx (/ (cbrt g) (cbrt 2)) (neg.f64 (*.f64 (cbrt.f64 #s(literal -1/2 binary64)) (cbrt.f64 g))))
(neg.f64 (*.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
(cbrt.f64 (/.f64 g (/.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 g (/.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)))))
g
(/.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 (pow.f64 a #s(literal 3 binary64)) (pow.f64 a #s(literal 3 binary64)))
(pow.f64 a #s(literal 3 binary64))
a
#s(literal 3 binary64)
(fma.f64 a a (-.f64 (*.f64 a a) (*.f64 a a)))
(-.f64 (*.f64 a a) (*.f64 a a))
(*.f64 a a)
Outputs
(/.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
(/.f64 (pow.f64 g #s(literal 1/3 binary64)) (cbrt.f64 (+.f64 a a)))
(/.f64 (cbrt.f64 g) (cbrt.f64 (*.f64 a #s(literal 2 binary64))))
(pow.f64 g #s(literal 1/3 binary64))
(cbrt.f64 g)
g
#s(literal 1/3 binary64)
(cbrt.f64 (+.f64 a a))
(cbrt.f64 (*.f64 a #s(literal 2 binary64)))
(+.f64 a a)
(*.f64 a #s(literal 2 binary64))
a
(pow.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64)) #s(literal 2 binary64))
(cbrt.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)))
(pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64))
(/.f64 (/.f64 g a) #s(literal 2 binary64))
(/.f64 g a)
g
a
#s(literal 2 binary64)
#s(literal 1/6 binary64)
(/.f64 #s(approx (/ (cbrt g) (cbrt 2)) (neg.f64 (*.f64 (cbrt.f64 #s(literal -1/2 binary64)) (cbrt.f64 g)))) (cbrt.f64 a))
(/.f64 #s(approx (/ (cbrt g) (cbrt 2)) (*.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 #s(literal -1/2 binary64)))) (cbrt.f64 a))
#s(approx (/ (cbrt g) (cbrt 2)) (neg.f64 (*.f64 (cbrt.f64 #s(literal -1/2 binary64)) (cbrt.f64 g))))
#s(approx (/ (cbrt g) (cbrt 2)) (*.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 #s(literal -1/2 binary64))))
(neg.f64 (*.f64 (cbrt.f64 #s(literal -1/2 binary64)) (cbrt.f64 g)))
(*.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 #s(literal -1/2 binary64)))
(*.f64 (cbrt.f64 #s(literal -1/2 binary64)) (cbrt.f64 g))
(*.f64 (cbrt.f64 g) (cbrt.f64 #s(literal -1/2 binary64)))
(cbrt.f64 #s(literal -1/2 binary64))
#s(literal -1/2 binary64)
(cbrt.f64 g)
g
(cbrt.f64 a)
a
(cbrt.f64 (/.f64 g (/.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))))))
(cbrt.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)))
(/.f64 g (/.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 (/.f64 g a) #s(literal 2 binary64))
g
(/.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 #s(literal 2 binary64))
(+.f64 (pow.f64 a #s(literal 3 binary64)) (pow.f64 a #s(literal 3 binary64)))
(*.f64 (pow.f64 a #s(literal 3 binary64)) #s(literal 2 binary64))
(pow.f64 a #s(literal 3 binary64))
a
#s(literal 3 binary64)
(fma.f64 a a (-.f64 (*.f64 a a) (*.f64 a a)))
(*.f64 a a)
(-.f64 (*.f64 a a) (*.f64 a a))
#s(literal 0 binary64)
(*.f64 a a)

localize282.0ms (9.9%)

Memory
29.4MiB live, 360.2MiB allocated; 74ms collecting garbage
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.00390625
(+.f64 (pow.f64 a #s(literal 3 binary64)) (pow.f64 a #s(literal 3 binary64)))
accuracy6.034207404756314
(cbrt.f64 (/.f64 g (/.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))))))
accuracy9.105417836920122
(-.f64 (*.f64 a a) (*.f64 a a))
accuracy22.263991344721237
(/.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))))
accuracy0.19921875
(/.f64 #s(approx (/ (cbrt g) (cbrt 2)) (neg.f64 (*.f64 (cbrt.f64 #s(literal -1/2 binary64)) (cbrt.f64 g)))) (cbrt.f64 a))
accuracy0.25619125976844204
(*.f64 (cbrt.f64 #s(literal -1/2 binary64)) (cbrt.f64 g))
accuracy0.2903900390737681
(cbrt.f64 a)
accuracy0.33240131837909415
(cbrt.f64 g)
accuracy0.0
(/.f64 (/.f64 g a) #s(literal 2 binary64))
accuracy0.0
(/.f64 g a)
accuracy0.26695253907376804
(pow.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64)) #s(literal 2 binary64))
accuracy7.448285100960583
(pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64))
accuracy0.0
(+.f64 a a)
accuracy0.17578125
(/.f64 (pow.f64 g #s(literal 1/3 binary64)) (cbrt.f64 (+.f64 a a)))
accuracy0.2448425781475361
(cbrt.f64 (+.f64 a a))
accuracy16.746537948633208
(pow.f64 g #s(literal 1/3 binary64))
accuracy0.0
#s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))
accuracy0.19921875
(/.f64 (cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))) (cbrt.f64 a))
accuracy0.2878113281475362
(cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g)))
accuracy0.2903900390737681
(cbrt.f64 a)
Samples
195.0ms126×5exit
51.0ms96×1valid
9.0ms34×0valid
Compiler

Compiled 202 to 37 computations (81.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 206.0ms
adjust: 73.0ms (35.5% of total)
ival-pow: 34.0ms (16.5% of total)
const: 24.0ms (11.7% of total)
ival-div: 24.0ms (11.7% of total)
ival-pow2: 21.0ms (10.2% of total)
ival-cbrt: 11.0ms (5.4% of total)
ival-add: 9.0ms (4.4% of total)
ival-mult: 6.0ms (2.9% of total)
ival-sub: 2.0ms (1% of total)
exact: 1.0ms (0.5% of total)
ival-neg: 1.0ms (0.5% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series112.0ms (3.9%)

Memory
7.7MiB live, 194.3MiB allocated; 23ms collecting garbage
Counts
23 → 44
Calls
Call 1
Inputs
(/.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)
(pow.f64 g #s(literal 1/3 binary64))
(/.f64 (pow.f64 g #s(literal 1/3 binary64)) (cbrt.f64 (+.f64 a a)))
(cbrt.f64 (+.f64 a a))
(+.f64 a a)
(pow.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64)) #s(literal 2 binary64))
(pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64))
(/.f64 (/.f64 g a) #s(literal 2 binary64))
(/.f64 g a)
(/.f64 #s(approx (/ (cbrt g) (cbrt 2)) (neg.f64 (*.f64 (cbrt.f64 #s(literal -1/2 binary64)) (cbrt.f64 g)))) (cbrt.f64 a))
#s(approx (/ (cbrt g) (cbrt 2)) (neg.f64 (*.f64 (cbrt.f64 #s(literal -1/2 binary64)) (cbrt.f64 g))))
(neg.f64 (*.f64 (cbrt.f64 #s(literal -1/2 binary64)) (cbrt.f64 g)))
(*.f64 (cbrt.f64 #s(literal -1/2 binary64)) (cbrt.f64 g))
(/.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 (*.f64 a a) (*.f64 a a))
(+.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)))
(cbrt.f64 a)
(cbrt.f64 g)
(cbrt.f64 (/.f64 g (/.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))))))
Outputs
#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 (pow g 1/3) #s(hole binary64 (cbrt g)))
#s(approx (/ (pow g 1/3) (cbrt (+ a a))) #s(hole binary64 (* (cbrt (/ g a)) (/ 1 (cbrt 2)))))
#s(approx (pow (pow (/ (/ g a) 2) 1/6) 2) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (pow (/ (/ g a) 2) 1/6) #s(hole binary64 (exp (* 1/6 (+ (log g) (log (/ 1/2 a)))))))
#s(approx (/ (/ g a) 2) #s(hole binary64 (* 1/2 (/ g a))))
#s(approx (/ g a) #s(hole binary64 (/ g a)))
#s(approx (/ (/ (cbrt g) (cbrt 2)) (cbrt a)) #s(hole binary64 (* (cbrt (/ g a)) (/ 1 (cbrt 2)))))
#s(approx (/ (cbrt g) (cbrt 2)) #s(hole binary64 (* (cbrt g) (/ 1 (cbrt 2)))))
#s(approx (neg (* (cbrt -1/2) (cbrt g))) #s(hole binary64 (* -1 (* (cbrt g) (cbrt -1/2)))))
#s(approx (* (cbrt -1/2) (cbrt g)) #s(hole binary64 (* (cbrt g) (cbrt -1/2))))
#s(approx (cbrt g) #s(hole binary64 (cbrt g)))
#s(approx (cbrt (/ g (/ (+ (pow a 3) (pow a 3)) (+ (* a a) (- (* a a) (* a a)))))) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (pow (/ (/ g a) 2) 1/6) #s(hole binary64 (exp (* 1/6 (+ (log (/ 1/2 a)) (* -1 (log (/ 1 g))))))))
#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 (pow g 1/3) #s(hole binary64 (* -1 (* (cbrt g) (cbrt -1)))))
#s(approx (/ (pow g 1/3) (cbrt (+ a a))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt 2))))))
#s(approx (pow (pow (/ (/ g a) 2) 1/6) 2) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1/2)))))
#s(approx (pow (/ (/ g a) 2) 1/6) #s(hole binary64 (exp (* 1/6 (+ (log (/ -1/2 a)) (* -1 (log (/ -1 g))))))))
#s(approx (/ (/ (cbrt g) (cbrt 2)) (cbrt a)) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt 2))))))
#s(approx (/ (cbrt g) (cbrt 2)) #s(hole binary64 (* -1 (* (cbrt g) (/ (cbrt -1) (cbrt 2))))))
#s(approx (neg (* (cbrt -1/2) (cbrt g))) #s(hole binary64 (* (cbrt g) (* (cbrt -1) (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) #s(hole binary64 (* -1 (* (cbrt g) (cbrt -1)))))
#s(approx (cbrt (/ g (/ (+ (pow a 3) (pow a 3)) (+ (* a a) (- (* a a) (* a a)))))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1/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 (/ (/ g a) 2) 1/6) #s(hole binary64 (exp (* 1/6 (+ (log (* 1/2 g)) (* -1 (log a)))))))
#s(approx (/ (+ (pow a 3) (pow a 3)) (+ (* a a) (- (* a a) (* a a)))) #s(hole binary64 (* 2 a)))
#s(approx (- (* a a) (* a a)) #s(hole binary64 0))
#s(approx (+ (pow a 3) (pow a 3)) #s(hole binary64 (* 2 (pow a 3))))
#s(approx (+ (* a a) (- (* a a) (* a a))) #s(hole binary64 (pow a 2)))
#s(approx (cbrt a) #s(hole binary64 (cbrt a)))
#s(approx (pow (/ (/ g a) 2) 1/6) #s(hole binary64 (exp (* 1/6 (+ (log (* 1/2 g)) (log (/ 1 a)))))))
#s(approx (/ (pow g 1/3) (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 (pow (/ (/ g a) 2) 1/6) 2) #s(hole binary64 (* (cbrt (/ g a)) (* (cbrt -1) (cbrt -1/2)))))
#s(approx (pow (/ (/ g a) 2) 1/6) #s(hole binary64 (exp (* 1/6 (+ (log (* -1/2 g)) (log (/ -1 a)))))))
#s(approx (cbrt a) #s(hole binary64 (* -1 (* (cbrt a) (cbrt -1)))))
#s(approx (cbrt (/ g (/ (+ (pow a 3) (pow a 3)) (+ (* a a) (- (* a a) (* a a)))))) #s(hole binary64 (* (cbrt (/ g a)) (* (cbrt -1) (cbrt -1/2)))))
Calls

6 calls:

TimeVariablePointExpression
22.0ms
a
@-inf
((/ (cbrt (/ g 2)) (cbrt a)) (cbrt (/ g 2)) (/ g 2) (* 1/2 g) (pow g 1/3) (/ (pow g 1/3) (cbrt (+ a a))) (cbrt (+ a a)) (+ a a) (pow (pow (/ (/ g a) 2) 1/6) 2) (pow (/ (/ g a) 2) 1/6) (/ (/ g a) 2) (/ g a) (/ (/ (cbrt g) (cbrt 2)) (cbrt a)) (/ (cbrt g) (cbrt 2)) (neg (* (cbrt -1/2) (cbrt g))) (* (cbrt -1/2) (cbrt g)) (/ (+ (pow a 3) (pow a 3)) (+ (* a a) (- (* a a) (* a a)))) (- (* a a) (* a a)) (+ (pow a 3) (pow a 3)) (+ (* a a) (- (* a a) (* a a))) (cbrt a) (cbrt g) (cbrt (/ g (/ (+ (pow a 3) (pow a 3)) (+ (* a a) (- (* a a) (* a a)))))))
20.0ms
g
@0
((/ (cbrt (/ g 2)) (cbrt a)) (cbrt (/ g 2)) (/ g 2) (* 1/2 g) (pow g 1/3) (/ (pow g 1/3) (cbrt (+ a a))) (cbrt (+ a a)) (+ a a) (pow (pow (/ (/ g a) 2) 1/6) 2) (pow (/ (/ g a) 2) 1/6) (/ (/ g a) 2) (/ g a) (/ (/ (cbrt g) (cbrt 2)) (cbrt a)) (/ (cbrt g) (cbrt 2)) (neg (* (cbrt -1/2) (cbrt g))) (* (cbrt -1/2) (cbrt g)) (/ (+ (pow a 3) (pow a 3)) (+ (* a a) (- (* a a) (* a a)))) (- (* a a) (* a a)) (+ (pow a 3) (pow a 3)) (+ (* a a) (- (* a a) (* a a))) (cbrt a) (cbrt g) (cbrt (/ g (/ (+ (pow a 3) (pow a 3)) (+ (* a a) (- (* a a) (* a a)))))))
19.0ms
a
@0
((/ (cbrt (/ g 2)) (cbrt a)) (cbrt (/ g 2)) (/ g 2) (* 1/2 g) (pow g 1/3) (/ (pow g 1/3) (cbrt (+ a a))) (cbrt (+ a a)) (+ a a) (pow (pow (/ (/ g a) 2) 1/6) 2) (pow (/ (/ g a) 2) 1/6) (/ (/ g a) 2) (/ g a) (/ (/ (cbrt g) (cbrt 2)) (cbrt a)) (/ (cbrt g) (cbrt 2)) (neg (* (cbrt -1/2) (cbrt g))) (* (cbrt -1/2) (cbrt g)) (/ (+ (pow a 3) (pow a 3)) (+ (* a a) (- (* a a) (* a a)))) (- (* a a) (* a a)) (+ (pow a 3) (pow a 3)) (+ (* a a) (- (* a a) (* a a))) (cbrt a) (cbrt g) (cbrt (/ g (/ (+ (pow a 3) (pow a 3)) (+ (* a a) (- (* a a) (* a a)))))))
18.0ms
g
@inf
((/ (cbrt (/ g 2)) (cbrt a)) (cbrt (/ g 2)) (/ g 2) (* 1/2 g) (pow g 1/3) (/ (pow g 1/3) (cbrt (+ a a))) (cbrt (+ a a)) (+ a a) (pow (pow (/ (/ g a) 2) 1/6) 2) (pow (/ (/ g a) 2) 1/6) (/ (/ g a) 2) (/ g a) (/ (/ (cbrt g) (cbrt 2)) (cbrt a)) (/ (cbrt g) (cbrt 2)) (neg (* (cbrt -1/2) (cbrt g))) (* (cbrt -1/2) (cbrt g)) (/ (+ (pow a 3) (pow a 3)) (+ (* a a) (- (* a a) (* a a)))) (- (* a a) (* a a)) (+ (pow a 3) (pow a 3)) (+ (* a a) (- (* a a) (* a a))) (cbrt a) (cbrt g) (cbrt (/ g (/ (+ (pow a 3) (pow a 3)) (+ (* a a) (- (* a a) (* a a)))))))
17.0ms
g
@-inf
((/ (cbrt (/ g 2)) (cbrt a)) (cbrt (/ g 2)) (/ g 2) (* 1/2 g) (pow g 1/3) (/ (pow g 1/3) (cbrt (+ a a))) (cbrt (+ a a)) (+ a a) (pow (pow (/ (/ g a) 2) 1/6) 2) (pow (/ (/ g a) 2) 1/6) (/ (/ g a) 2) (/ g a) (/ (/ (cbrt g) (cbrt 2)) (cbrt a)) (/ (cbrt g) (cbrt 2)) (neg (* (cbrt -1/2) (cbrt g))) (* (cbrt -1/2) (cbrt g)) (/ (+ (pow a 3) (pow a 3)) (+ (* a a) (- (* a a) (* a a)))) (- (* a a) (* a a)) (+ (pow a 3) (pow a 3)) (+ (* a a) (- (* a a) (* a a))) (cbrt a) (cbrt g) (cbrt (/ g (/ (+ (pow a 3) (pow a 3)) (+ (* a a) (- (* a a) (* a a)))))))

rewrite50.0ms (1.8%)

Memory
-5.0MiB live, 40.4MiB allocated; 4ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0184848
0219621
0639621
Stop Event
iter limit
iter limit
iter limit
unsound
iter limit
Counts
67 → 155
Calls
Call 1
Inputs
(/.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)
(pow.f64 g #s(literal 1/3 binary64))
(/.f64 (pow.f64 g #s(literal 1/3 binary64)) (cbrt.f64 (+.f64 a a)))
(cbrt.f64 (+.f64 a a))
(+.f64 a a)
(pow.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64)) #s(literal 2 binary64))
(pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64))
(/.f64 (/.f64 g a) #s(literal 2 binary64))
(/.f64 g a)
(/.f64 #s(approx (/ (cbrt g) (cbrt 2)) (neg.f64 (*.f64 (cbrt.f64 #s(literal -1/2 binary64)) (cbrt.f64 g)))) (cbrt.f64 a))
#s(approx (/ (cbrt g) (cbrt 2)) (neg.f64 (*.f64 (cbrt.f64 #s(literal -1/2 binary64)) (cbrt.f64 g))))
(neg.f64 (*.f64 (cbrt.f64 #s(literal -1/2 binary64)) (cbrt.f64 g)))
(*.f64 (cbrt.f64 #s(literal -1/2 binary64)) (cbrt.f64 g))
(/.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 (*.f64 a a) (*.f64 a a))
(+.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)))
(cbrt.f64 a)
(cbrt.f64 g)
(cbrt.f64 (/.f64 g (/.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))))))
#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 (pow g 1/3) #s(hole binary64 (cbrt g)))
#s(approx (/ (pow g 1/3) (cbrt (+ a a))) #s(hole binary64 (* (cbrt (/ g a)) (/ 1 (cbrt 2)))))
#s(approx (pow (pow (/ (/ g a) 2) 1/6) 2) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (pow (/ (/ g a) 2) 1/6) #s(hole binary64 (exp (* 1/6 (+ (log g) (log (/ 1/2 a)))))))
#s(approx (/ (/ g a) 2) #s(hole binary64 (* 1/2 (/ g a))))
#s(approx (/ g a) #s(hole binary64 (/ g a)))
#s(approx (/ (/ (cbrt g) (cbrt 2)) (cbrt a)) #s(hole binary64 (* (cbrt (/ g a)) (/ 1 (cbrt 2)))))
#s(approx (/ (cbrt g) (cbrt 2)) #s(hole binary64 (* (cbrt g) (/ 1 (cbrt 2)))))
#s(approx (neg (* (cbrt -1/2) (cbrt g))) #s(hole binary64 (* -1 (* (cbrt g) (cbrt -1/2)))))
#s(approx (* (cbrt -1/2) (cbrt g)) #s(hole binary64 (* (cbrt g) (cbrt -1/2))))
#s(approx (cbrt g) #s(hole binary64 (cbrt g)))
#s(approx (cbrt (/ g (/ (+ (pow a 3) (pow a 3)) (+ (* a a) (- (* a a) (* a a)))))) #s(hole binary64 (* (cbrt (/ g a)) (cbrt 1/2))))
#s(approx (pow (/ (/ g a) 2) 1/6) #s(hole binary64 (exp (* 1/6 (+ (log (/ 1/2 a)) (* -1 (log (/ 1 g))))))))
#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 (pow g 1/3) #s(hole binary64 (* -1 (* (cbrt g) (cbrt -1)))))
#s(approx (/ (pow g 1/3) (cbrt (+ a a))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt 2))))))
#s(approx (pow (pow (/ (/ g a) 2) 1/6) 2) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1/2)))))
#s(approx (pow (/ (/ g a) 2) 1/6) #s(hole binary64 (exp (* 1/6 (+ (log (/ -1/2 a)) (* -1 (log (/ -1 g))))))))
#s(approx (/ (/ (cbrt g) (cbrt 2)) (cbrt a)) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (/ (cbrt -1) (cbrt 2))))))
#s(approx (/ (cbrt g) (cbrt 2)) #s(hole binary64 (* -1 (* (cbrt g) (/ (cbrt -1) (cbrt 2))))))
#s(approx (neg (* (cbrt -1/2) (cbrt g))) #s(hole binary64 (* (cbrt g) (* (cbrt -1) (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) #s(hole binary64 (* -1 (* (cbrt g) (cbrt -1)))))
#s(approx (cbrt (/ g (/ (+ (pow a 3) (pow a 3)) (+ (* a a) (- (* a a) (* a a)))))) #s(hole binary64 (* -1 (* (cbrt (/ g a)) (cbrt -1/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 (/ (/ g a) 2) 1/6) #s(hole binary64 (exp (* 1/6 (+ (log (* 1/2 g)) (* -1 (log a)))))))
#s(approx (/ (+ (pow a 3) (pow a 3)) (+ (* a a) (- (* a a) (* a a)))) #s(hole binary64 (* 2 a)))
#s(approx (- (* a a) (* a a)) #s(hole binary64 0))
#s(approx (+ (pow a 3) (pow a 3)) #s(hole binary64 (* 2 (pow a 3))))
#s(approx (+ (* a a) (- (* a a) (* a a))) #s(hole binary64 (pow a 2)))
#s(approx (cbrt a) #s(hole binary64 (cbrt a)))
#s(approx (pow (/ (/ g a) 2) 1/6) #s(hole binary64 (exp (* 1/6 (+ (log (* 1/2 g)) (log (/ 1 a)))))))
#s(approx (/ (pow g 1/3) (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 (pow (/ (/ g a) 2) 1/6) 2) #s(hole binary64 (* (cbrt (/ g a)) (* (cbrt -1) (cbrt -1/2)))))
#s(approx (pow (/ (/ g a) 2) 1/6) #s(hole binary64 (exp (* 1/6 (+ (log (* -1/2 g)) (log (/ -1 a)))))))
#s(approx (cbrt a) #s(hole binary64 (* -1 (* (cbrt a) (cbrt -1)))))
#s(approx (cbrt (/ g (/ (+ (pow a 3) (pow a 3)) (+ (* a a) (- (* a a) (* a a)))))) #s(hole binary64 (* (cbrt (/ g a)) (* (cbrt -1) (cbrt -1/2)))))
Outputs
(/.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))
(*.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 (pow.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64)) #s(literal 1 binary64)) (pow.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64)) (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64)))
(pow.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64)) #s(literal 2 binary64))
(pow.f64 (/.f64 (/.f64 g 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 (neg.f64 (cbrt.f64 (/.f64 g #s(literal 2 binary64)))) (neg.f64 (cbrt.f64 a)))
(/.f64 (cbrt.f64 (/.f64 g #s(literal 2 binary64))) (cbrt.f64 a))
(/.f64 (cbrt.f64 g) (cbrt.f64 (*.f64 a #s(literal 2 binary64))))
(cbrt.f64 (/.f64 (/.f64 g #s(literal 2 binary64)) a))
(cbrt.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64))) #s(literal 2 binary64)))
(*.f64 (cbrt.f64 a) (cbrt.f64 #s(literal 2 binary64)))
(*.f64 (cbrt.f64 #s(literal 2 binary64)) (cbrt.f64 a))
(pow.f64 (*.f64 a #s(literal 2 binary64)) #s(literal 1/3 binary64))
(cbrt.f64 (*.f64 a #s(literal 2 binary64)))
(*.f64 a #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) a)
(/.f64 (neg.f64 (*.f64 (pow.f64 a #s(literal 3 binary64)) #s(literal 2 binary64))) (neg.f64 (fma.f64 a a #s(literal 0 binary64))))
(/.f64 #s(literal 0 binary64) (-.f64 a a))
(/.f64 (*.f64 (pow.f64 a #s(literal 3 binary64)) #s(literal 2 binary64)) (fma.f64 a a #s(literal 0 binary64)))
(+.f64 (/.f64 (pow.f64 a #s(literal 3 binary64)) (fma.f64 a a #s(literal 0 binary64))) (/.f64 (pow.f64 a #s(literal 3 binary64)) (fma.f64 a a #s(literal 0 binary64))))
(+.f64 a a)
(*.f64 (pow.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64)) #s(literal 1 binary64)) (pow.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64)) (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64)))
(pow.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64)) #s(literal 2 binary64))
(pow.f64 (/.f64 (/.f64 g 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 (neg.f64 (cbrt.f64 (/.f64 g #s(literal 2 binary64)))) (neg.f64 (cbrt.f64 a)))
(/.f64 (cbrt.f64 (/.f64 g #s(literal 2 binary64))) (cbrt.f64 a))
(/.f64 (cbrt.f64 g) (cbrt.f64 (*.f64 a #s(literal 2 binary64))))
(cbrt.f64 (/.f64 (/.f64 g #s(literal 2 binary64)) a))
(cbrt.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64))) #s(literal 2 binary64)))
(*.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/12 binary64)) (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/12 binary64)))
(pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64))
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64))) #s(literal 1/6 binary64)))
(*.f64 (/.f64 g (*.f64 (pow.f64 a #s(literal 3 binary64)) #s(literal 2 binary64))) (fma.f64 a a #s(literal 0 binary64)))
(/.f64 (neg.f64 g) (neg.f64 (*.f64 a #s(literal 2 binary64))))
(/.f64 (neg.f64 (/.f64 g a)) #s(literal -2 binary64))
(/.f64 (/.f64 g a) #s(literal 2 binary64))
(/.f64 g (*.f64 a #s(literal 2 binary64)))
(/.f64 (neg.f64 g) (neg.f64 a))
(/.f64 g a)
(/.f64 (neg.f64 #s(approx (/ (cbrt g) (cbrt 2)) (neg.f64 (cbrt.f64 (*.f64 #s(literal -1/2 binary64) g))))) (neg.f64 (cbrt.f64 a)))
(/.f64 #s(approx (/ (cbrt g) (cbrt 2)) (neg.f64 (cbrt.f64 (*.f64 #s(literal -1/2 binary64) g)))) (cbrt.f64 a))
#s(approx (/ (cbrt g) (cbrt 2)) (neg.f64 (cbrt.f64 (*.f64 #s(literal -1/2 binary64) g))))
(*.f64 (*.f64 #s(literal -1 binary64) (cbrt.f64 g)) (cbrt.f64 #s(literal -1/2 binary64)))
(*.f64 (neg.f64 (cbrt.f64 #s(literal -1/2 binary64))) (cbrt.f64 g))
(*.f64 #s(literal -1 binary64) (cbrt.f64 (*.f64 #s(literal -1/2 binary64) g)))
(*.f64 (cbrt.f64 (*.f64 #s(literal -1/2 binary64) g)) #s(literal -1 binary64))
(*.f64 (cbrt.f64 #s(literal -1/2 binary64)) (neg.f64 (cbrt.f64 g)))
(neg.f64 (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)))
(/.f64 (cbrt.f64 (*.f64 g #s(literal -1 binary64))) (cbrt.f64 #s(literal 2 binary64)))
(cbrt.f64 (*.f64 #s(literal -1/2 binary64) g))
(*.f64 a #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) a)
(/.f64 (neg.f64 (*.f64 (pow.f64 a #s(literal 3 binary64)) #s(literal 2 binary64))) (neg.f64 (fma.f64 a a #s(literal 0 binary64))))
(/.f64 #s(literal 0 binary64) (-.f64 a a))
(/.f64 (*.f64 (pow.f64 a #s(literal 3 binary64)) #s(literal 2 binary64)) (fma.f64 a a #s(literal 0 binary64)))
(+.f64 (/.f64 (pow.f64 a #s(literal 3 binary64)) (fma.f64 a a #s(literal 0 binary64))) (/.f64 (pow.f64 a #s(literal 3 binary64)) (fma.f64 a a #s(literal 0 binary64))))
(+.f64 a a)
#s(literal 0 binary64)
(*.f64 (fma.f64 a a #s(literal 0 binary64)) (*.f64 a #s(literal 2 binary64)))
(*.f64 (pow.f64 a #s(literal 3 binary64)) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) (pow.f64 a #s(literal 3 binary64)))
(/.f64 (-.f64 (*.f64 (pow.f64 a #s(literal 3 binary64)) (pow.f64 a #s(literal 3 binary64))) (*.f64 (pow.f64 a #s(literal 3 binary64)) (pow.f64 a #s(literal 3 binary64)))) (-.f64 (pow.f64 a #s(literal 3 binary64)) (pow.f64 a #s(literal 3 binary64))))
(/.f64 (+.f64 (pow.f64 (pow.f64 a #s(literal 3 binary64)) #s(literal 3 binary64)) (pow.f64 (pow.f64 a #s(literal 3 binary64)) #s(literal 3 binary64))) (fma.f64 (pow.f64 a #s(literal 3 binary64)) (pow.f64 a #s(literal 3 binary64)) (-.f64 (*.f64 (pow.f64 a #s(literal 3 binary64)) (pow.f64 a #s(literal 3 binary64))) (*.f64 (pow.f64 a #s(literal 3 binary64)) (pow.f64 a #s(literal 3 binary64))))))
(fma.f64 (pow.f64 a #s(literal 3/2 binary64)) (pow.f64 a #s(literal 3/2 binary64)) (pow.f64 a #s(literal 3 binary64)))
(fma.f64 (*.f64 a a) a (pow.f64 a #s(literal 3 binary64)))
(fma.f64 a (*.f64 a a) (pow.f64 a #s(literal 3 binary64)))
(+.f64 (pow.f64 a #s(literal 3 binary64)) (pow.f64 a #s(literal 3 binary64)))
(/.f64 (-.f64 (*.f64 (*.f64 a a) (*.f64 a a)) #s(literal 0 binary64)) (-.f64 (*.f64 a a) #s(literal 0 binary64)))
(/.f64 (+.f64 (pow.f64 (*.f64 a a) #s(literal 3 binary64)) #s(literal 0 binary64)) (fma.f64 (*.f64 a a) (*.f64 a a) (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 a a) #s(literal 0 binary64)))))
(fma.f64 (pow.f64 a #s(literal 1 binary64)) (pow.f64 a #s(literal 1 binary64)) #s(literal 0 binary64))
(fma.f64 (neg.f64 a) (neg.f64 a) #s(literal 0 binary64))
(fma.f64 (fabs.f64 a) (fabs.f64 a) #s(literal 0 binary64))
(fma.f64 a a #s(literal 0 binary64))
(-.f64 (fma.f64 a a (*.f64 a a)) (*.f64 a a))
(+.f64 #s(literal 0 binary64) (*.f64 a a))
(+.f64 (*.f64 a a) #s(literal 0 binary64))
(pow.f64 a #s(literal 1/3 binary64))
(cbrt.f64 a)
(*.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 (pow.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64)) #s(literal 1 binary64)) (pow.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64)) (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64)))
(pow.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64)) #s(literal 2 binary64))
(pow.f64 (/.f64 (/.f64 g 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 (neg.f64 (cbrt.f64 (/.f64 g #s(literal 2 binary64)))) (neg.f64 (cbrt.f64 a)))
(/.f64 (cbrt.f64 (/.f64 g #s(literal 2 binary64))) (cbrt.f64 a))
(/.f64 (cbrt.f64 g) (cbrt.f64 (*.f64 a #s(literal 2 binary64))))
(cbrt.f64 (/.f64 (/.f64 g #s(literal 2 binary64)) a))
(cbrt.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64))) #s(literal 2 binary64)))
#s(approx (cbrt (/ g (/ (+ (pow a 3) (pow a 3)) (+ (* a a) (- (* a a) (* a a)))))) (cbrt.f64 (*.f64 (/.f64 g a) #s(literal 1/2 binary64))))
#s(approx (/ (cbrt g) (cbrt 2)) (cbrt.f64 (*.f64 #s(literal 1/2 binary64) g)))
#s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))
#s(approx (* 1/2 g) (*.f64 #s(literal 1/2 binary64) g))
#s(approx (cbrt g) (cbrt.f64 g))
#s(approx (cbrt (/ g (/ (+ (pow a 3) (pow a 3)) (+ (* a a) (- (* a a) (* a a)))))) (*.f64 (pow.f64 (cbrt.f64 #s(literal 2 binary64)) #s(literal -1 binary64)) (cbrt.f64 (/.f64 g a))))
#s(approx (cbrt (/ g (/ (+ (pow a 3) (pow a 3)) (+ (* a a) (- (* a a) (* a a)))))) (cbrt.f64 (*.f64 (/.f64 g a) #s(literal 1/2 binary64))))
#s(approx (pow (/ (/ g a) 2) 1/6) (pow.f64 (exp.f64 #s(literal 1/6 binary64)) (log.f64 (*.f64 g (/.f64 #s(literal 1/2 binary64) a)))))
#s(approx (/ (/ g a) 2) (*.f64 (/.f64 g a) #s(literal 1/2 binary64)))
#s(approx (/ g a) (/.f64 g a))
#s(approx (cbrt (/ g (/ (+ (pow a 3) (pow a 3)) (+ (* a a) (- (* a a) (* a a)))))) (*.f64 (pow.f64 (cbrt.f64 #s(literal 2 binary64)) #s(literal -1 binary64)) (cbrt.f64 (/.f64 g a))))
#s(approx (/ (cbrt g) (cbrt 2)) (*.f64 (pow.f64 (cbrt.f64 #s(literal 2 binary64)) #s(literal -1 binary64)) (cbrt.f64 g)))
#s(approx (neg (* (cbrt -1/2) (cbrt g))) (neg.f64 (cbrt.f64 (*.f64 #s(literal -1/2 binary64) g))))
#s(approx (* (cbrt -1/2) (cbrt g)) (cbrt.f64 (*.f64 #s(literal -1/2 binary64) g)))
#s(approx (cbrt g) (cbrt.f64 g))
#s(approx (cbrt (/ g (/ (+ (pow a 3) (pow a 3)) (+ (* a a) (- (* a a) (* a a)))))) (cbrt.f64 (*.f64 (/.f64 g a) #s(literal 1/2 binary64))))
#s(approx (pow (/ (/ g a) 2) 1/6) (pow.f64 (exp.f64 #s(literal 1/6 binary64)) (fma.f64 (neg.f64 (log.f64 g)) #s(literal -1 binary64) (log.f64 (/.f64 #s(literal 1/2 binary64) a)))))
#s(approx (cbrt (/ g (/ (+ (pow a 3) (pow a 3)) (+ (* a a) (- (* a a) (* a a)))))) (neg.f64 (cbrt.f64 (*.f64 (/.f64 g a) #s(literal -1/2 binary64)))))
#s(approx (/ (cbrt g) (cbrt 2)) (neg.f64 (cbrt.f64 (*.f64 #s(literal -1/2 binary64) g))))
#s(approx (cbrt g) (neg.f64 (cbrt.f64 (*.f64 g #s(literal -1 binary64)))))
#s(approx (cbrt (/ g (/ (+ (pow a 3) (pow a 3)) (+ (* a a) (- (* a a) (* a a)))))) (neg.f64 (cbrt.f64 (*.f64 (/.f64 g a) #s(literal -1/2 binary64)))))
#s(approx (cbrt (/ g (/ (+ (pow a 3) (pow a 3)) (+ (* a a) (- (* a a) (* a a)))))) (neg.f64 (cbrt.f64 (*.f64 (/.f64 g a) #s(literal -1/2 binary64)))))
#s(approx (pow (/ (/ g a) 2) 1/6) (pow.f64 (exp.f64 #s(literal 1/6 binary64)) (fma.f64 (log.f64 (/.f64 #s(literal -1 binary64) g)) #s(literal -1 binary64) (log.f64 (/.f64 #s(literal -1/2 binary64) a)))))
#s(approx (cbrt (/ g (/ (+ (pow a 3) (pow a 3)) (+ (* a a) (- (* a a) (* a a)))))) (neg.f64 (cbrt.f64 (*.f64 (/.f64 g a) #s(literal -1/2 binary64)))))
#s(approx (/ (cbrt g) (cbrt 2)) (neg.f64 (cbrt.f64 (*.f64 #s(literal -1/2 binary64) g))))
#s(approx (neg (* (cbrt -1/2) (cbrt g))) (cbrt.f64 (*.f64 #s(literal 1/2 binary64) g)))
#s(approx (* (cbrt -1/2) (cbrt g)) (neg.f64 (cbrt.f64 (*.f64 #s(literal 1/2 binary64) g))))
#s(approx (cbrt g) (neg.f64 (cbrt.f64 (*.f64 g #s(literal -1 binary64)))))
#s(approx (cbrt (/ g (/ (+ (pow a 3) (pow a 3)) (+ (* a a) (- (* a a) (* a a)))))) (neg.f64 (cbrt.f64 (*.f64 (/.f64 g a) #s(literal -1/2 binary64)))))
#s(approx (cbrt (+ a a)) (cbrt.f64 (*.f64 a #s(literal 2 binary64))))
#s(approx (/ (+ (pow a 3) (pow a 3)) (+ (* a a) (- (* a a) (* a a)))) (*.f64 a #s(literal 2 binary64)))
#s(approx (pow (/ (/ g a) 2) 1/6) (pow.f64 (exp.f64 #s(literal 1/6 binary64)) (fma.f64 (log.f64 a) #s(literal -1 binary64) (log.f64 (*.f64 #s(literal 1/2 binary64) g)))))
#s(approx (/ (+ (pow a 3) (pow a 3)) (+ (* a a) (- (* a a) (* a a)))) (*.f64 a #s(literal 2 binary64)))
#s(approx (- (* a a) (* a a)) #s(literal 0 binary64))
#s(approx (+ (pow a 3) (pow a 3)) (*.f64 (pow.f64 a #s(literal 3 binary64)) #s(literal 2 binary64)))
#s(approx (+ (* a a) (- (* a a) (* a a))) (*.f64 a a))
#s(approx (cbrt a) (cbrt.f64 a))
#s(approx (pow (/ (/ g a) 2) 1/6) (pow.f64 (exp.f64 #s(literal 1/6 binary64)) (fma.f64 (log.f64 a) #s(literal -1 binary64) (log.f64 (*.f64 #s(literal 1/2 binary64) g)))))
#s(approx (cbrt (/ g (/ (+ (pow a 3) (pow a 3)) (+ (* a a) (- (* a a) (* a a)))))) (cbrt.f64 (*.f64 (/.f64 g a) #s(literal 1/2 binary64))))
#s(approx (cbrt (+ a a)) (neg.f64 (cbrt.f64 (*.f64 a #s(literal -2 binary64)))))
#s(approx (cbrt (/ g (/ (+ (pow a 3) (pow a 3)) (+ (* a a) (- (* a a) (* a a)))))) (cbrt.f64 (*.f64 (/.f64 g a) #s(literal 1/2 binary64))))
#s(approx (pow (/ (/ g a) 2) 1/6) (pow.f64 (exp.f64 #s(literal 1/6 binary64)) (log.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) g) (/.f64 #s(literal -1 binary64) a)))))
#s(approx (cbrt a) (neg.f64 (cbrt.f64 (*.f64 a #s(literal -1 binary64)))))
#s(approx (cbrt (/ g (/ (+ (pow a 3) (pow a 3)) (+ (* a a) (- (* a a) (* a a)))))) (cbrt.f64 (*.f64 (/.f64 g a) #s(literal 1/2 binary64))))

eval10.0ms (0.4%)

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

Compiled 1 720 to 399 computations (76.8% saved)

prune40.0ms (1.4%)

Memory
-24.8MiB live, 21.3MiB allocated; 2ms collecting garbage
Pruning

15 alts after pruning (7 fresh and 8 done)

PrunedKeptTotal
New1054109
Fresh033
Picked235
Done055
Total10715122
Accuracy
99.8%
Counts
122 → 15
Alt Table
Click to see full alt table
StatusAccuracyProgram
39.0%
(pow.f64 (pow.f64 (/.f64 g (*.f64 a #s(literal 2 binary64))) #s(literal 1/6 binary64)) #s(literal 2 binary64))
39.0%
(pow.f64 (/.f64 g (+.f64 a a)) #s(literal 1/3 binary64))
49.7%
(/.f64 (pow.f64 g #s(literal 1/3 binary64)) (cbrt.f64 (+.f64 a a)))
98.7%
(/.f64 (/.f64 (cbrt.f64 g) (pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64))) (cbrt.f64 a))
98.3%
(/.f64 (/.f64 (cbrt.f64 g) (cbrt.f64 #s(literal 2 binary64))) (cbrt.f64 a))
75.6%
(/.f64 (cbrt.f64 (/.f64 g a)) (cbrt.f64 #s(literal 2 binary64)))
98.8%
(/.f64 (cbrt.f64 #s(approx (/ g 2) (*.f64 #s(literal 1/2 binary64) g))) (cbrt.f64 a))
98.8%
(/.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.8%
(/.f64 (cbrt.f64 g) (cbrt.f64 (+.f64 a a)))
98.7%
(/.f64 #s(approx (/ (cbrt g) (cbrt 2)) (neg.f64 (*.f64 (cbrt.f64 #s(literal -1/2 binary64)) (cbrt.f64 g)))) (cbrt.f64 a))
8.8%
(cbrt.f64 (/.f64 g (/.f64 (/.f64 (+.f64 (pow.f64 (pow.f64 a #s(literal 3 binary64)) #s(literal 3 binary64)) (pow.f64 (pow.f64 a #s(literal 3 binary64)) #s(literal 3 binary64))) (fma.f64 (pow.f64 a #s(literal 3 binary64)) (pow.f64 a #s(literal 3 binary64)) (-.f64 (*.f64 (pow.f64 a #s(literal 3 binary64)) (pow.f64 a #s(literal 3 binary64))) (*.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))))))
30.8%
(cbrt.f64 (/.f64 g (/.f64 (*.f64 (fma.f64 a a #s(literal 0 binary64)) (*.f64 a #s(literal 2 binary64))) (fma.f64 a a (-.f64 (*.f64 a a) (*.f64 a a))))))
30.7%
(cbrt.f64 (/.f64 g (/.f64 (*.f64 (pow.f64 a #s(literal 3 binary64)) #s(literal 2 binary64)) (fma.f64 a a (-.f64 (*.f64 a a) (*.f64 a a))))))
76.4%
(cbrt.f64 (/.f64 g (+.f64 a a)))
Compiler

Compiled 483 to 236 computations (51.1% saved)

regimes40.0ms (1.4%)

Memory
12.8MiB live, 58.3MiB allocated; 10ms collecting garbage
Counts
24 → 1
Calls
Call 1
Inputs
(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))
(cbrt.f64 (/.f64 g (/.f64 (*.f64 (fma.f64 a a #s(literal 0 binary64)) (*.f64 a #s(literal 2 binary64))) (fma.f64 a a (-.f64 (*.f64 a a) (*.f64 a a))))))
(/.f64 (cbrt.f64 g) (cbrt.f64 (+.f64 a a)))
(/.f64 (pow.f64 g #s(literal 1/3 binary64)) (cbrt.f64 (+.f64 a 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 (pow.f64 g #s(literal 1/3 binary64)) (cbrt.f64 (*.f64 a #s(literal 2 binary64))))
(pow.f64 (pow.f64 (/.f64 g (*.f64 a #s(literal 2 binary64))) #s(literal 1/6 binary64)) #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)))
(pow.f64 (pow.f64 (/.f64 (/.f64 g a) #s(literal 2 binary64)) #s(literal 1/6 binary64)) #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)))
(cbrt.f64 (/.f64 g (/.f64 (*.f64 (pow.f64 a #s(literal 3 binary64)) #s(literal 2 binary64)) (fma.f64 a a (-.f64 (*.f64 a a) (*.f64 a a))))))
(/.f64 (cbrt.f64 g) (*.f64 (cbrt.f64 a) (cbrt.f64 #s(literal 2 binary64))))
#s(approx (pow (/ g (* a 2)) 1/3) (*.f64 (pow.f64 (cbrt.f64 #s(literal 2 binary64)) #s(literal -1 binary64)) (cbrt.f64 (/.f64 g a))))
(/.f64 (cbrt.f64 g) (*.f64 (cbrt.f64 a) (pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64))))
(/.f64 #s(approx (/ (cbrt g) (cbrt 2)) (neg.f64 (*.f64 (cbrt.f64 #s(literal -1/2 binary64)) (cbrt.f64 g)))) (cbrt.f64 a))
(/.f64 (/.f64 (cbrt.f64 g) (cbrt.f64 #s(literal 2 binary64))) (cbrt.f64 a))
(/.f64 (/.f64 (cbrt.f64 g) (pow.f64 #s(literal 2 binary64) #s(literal 1/3 binary64))) (cbrt.f64 a))
(cbrt.f64 (/.f64 g (/.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))))))
(cbrt.f64 (/.f64 g (/.f64 (/.f64 (+.f64 (pow.f64 (pow.f64 a #s(literal 3 binary64)) #s(literal 3 binary64)) (pow.f64 (pow.f64 a #s(literal 3 binary64)) #s(literal 3 binary64))) (fma.f64 (pow.f64 a #s(literal 3 binary64)) (pow.f64 a #s(literal 3 binary64)) (-.f64 (*.f64 (pow.f64 a #s(literal 3 binary64)) (pow.f64 a #s(literal 3 binary64))) (*.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))))))
Outputs
(/.f64 (cbrt.f64 g) (cbrt.f64 (+.f64 a a)))
Calls

5 calls:

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

Compiled 16 to 19 computations (-18.8% saved)

regimes10.0ms (0.3%)

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

Total -40.4b remaining (-267.6%)

Threshold costs -40.4b (-267.6%)

Counts
5 → 1
Calls
Call 1
Inputs
(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))
(cbrt.f64 (/.f64 g (/.f64 (*.f64 (fma.f64 a a #s(literal 0 binary64)) (*.f64 a #s(literal 2 binary64))) (fma.f64 a a (-.f64 (*.f64 a a) (*.f64 a a))))))
Outputs
(cbrt.f64 (/.f64 g (+.f64 a a)))
Calls

5 calls:

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

Compiled 16 to 19 computations (-18.8% saved)

simplify12.0ms (0.4%)

Memory
-26.4MiB live, 17.5MiB allocated; 4ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0813
Stop Event
saturated
Calls
Call 1
Inputs
(/.f64 (cbrt.f64 g) (cbrt.f64 (+.f64 a a)))
(cbrt.f64 (/.f64 g (+.f64 a a)))
Outputs
(/.f64 (cbrt.f64 g) (cbrt.f64 (+.f64 a a)))
(cbrt.f64 (/.f64 g (+.f64 a a)))

derivations3.0ms (0.1%)

Memory
4.9MiB live, 4.9MiB allocated; 0ms collecting garbage
Stop Event
fuel
Compiler

Compiled 13 to 8 computations (38.5% saved)

preprocess15.0ms (0.5%)

Memory
-13.3MiB live, 32.8MiB allocated; 4ms collecting garbage
Compiler

Compiled 38 to 28 computations (26.3% saved)

end0.0ms (0%)

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

Profiling

Loading profile data...