Diagrams.Solve.Polynomial:cubForm from diagrams-solve-0.1, D

Time bar (total: 4.4s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated

analyze355.0ms (8.1%)

Memory
35.7MiB live, 508.2MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.8%0.2%0%0%0%0
0%0%99.8%0.2%0%0%0%1
0%0%99.8%0.2%0%0%0%2
0%0%99.8%0.2%0%0%0%3
0%0%99.8%0.2%0%0%0%4
0%0%99.8%0.2%0%0%0%5
0%0%99.8%0.2%0%0%0%6
0%0%99.8%0.2%0%0%0%7
0%0%99.8%0.2%0%0%0%8
4.2%3.1%71.7%0.2%0%25%0%9
4.2%3.1%71.3%0.2%0%25.3%0%10
6.3%4.7%69.2%0.2%0%25.9%0%11
9.2%6.6%65.8%0.2%0%27.4%0%12
Compiler

Compiled 21 to 20 computations (4.8% saved)

sample3.6s (81.9%)

Memory
32.7MiB live, 5 709.8MiB allocated
Samples
1.6s15 787×0invalid
865.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 1.7s
ival-mult: 722.0ms (42.8% of total)
ival-div: 568.0ms (33.6% of total)
ival-acos: 169.0ms (10% of total)
ival-sqrt: 158.0ms (9.4% of total)
exact: 40.0ms (2.4% of total)
ival-true: 20.0ms (1.2% of total)
ival-assert: 10.0ms (0.6% of total)
Bogosity

explain165.0ms (3.8%)

Memory
21.2MiB live, 255.4MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
240-1(-2.3928057304752138e-141 4.0349766340000444e+172 -1.7460402808417793e-207 4.750982112322465e+70)(/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64)))
110-3(-1.0059386896759307e-112 -1.4196999663933333e+166 -2.5156473751949584e+42 7.983622849604845e+242)(*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t))
10-0-(/.f64 x (*.f64 y #s(literal 27 binary64)))
00-0-t
00-0-#s(literal 3 binary64)
00-0-#s(literal 1 binary64)
00-0-(*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64))))
00-0-(*.f64 y #s(literal 27 binary64))
00-0-y
00-0-#s(literal 27 binary64)
00-0-z
00-0-(/.f64 #s(literal 1 binary64) #s(literal 3 binary64))
00-0-(acos.f64 (*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t)))
00-0-#s(literal 2 binary64)
00-0-(*.f64 z #s(literal 2 binary64))
00-0-(sqrt.f64 t)
00-0-(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)) (acos.f64 (*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t))))
00-0-x
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
/.f64(/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64)))u/n200
(/.f64 x (*.f64 y #s(literal 27 binary64)))underflow55
(*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64))))underflow55
*.f64(*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t))n*u80
/.f64(/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64)))o/n30
(*.f64 y #s(literal 27 binary64))overflow2
(/.f64 x (*.f64 y #s(literal 27 binary64)))overflow3
(*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64))))overflow3
/.f64(/.f64 x (*.f64 y #s(literal 27 binary64)))n/o10
(*.f64 y #s(literal 27 binary64))overflow2
Confusion
Predicted +Predicted -
+30
-29224
Precision
0.09375
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+300
-290224
Precision?
0.09375
Recall?
1.0
Freqs
test
numberfreq
0224
132
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
57.0ms512×0valid
Compiler

Compiled 293 to 76 computations (74.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 34.0ms
ival-mult: 15.0ms (43.7% of total)
ival-div: 10.0ms (29.1% of total)
ival-sqrt: 4.0ms (11.6% of total)
ival-acos: 4.0ms (11.6% of total)
exact: 1.0ms (2.9% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess4.0ms (0.1%)

Memory
7.2MiB live, 7.2MiB allocated
Algorithm
egg-herbie
Calls
Call 1
Inputs
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)) (acos.f64 (*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t))))
Outputs
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)) (acos.f64 (*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t))))
Compiler

Compiled 19 to 18 computations (5.3% saved)

eval0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated
Compiler

Compiled 0 to 4 computations (-∞% saved)

prune1.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
97.3%
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)) (acos.f64 (*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t))))
Compiler

Compiled 19 to 18 computations (5.3% saved)

simplify1.0ms (0%)

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

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t))
cost-diff0
(acos.f64 (*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t)))
cost-diff0
(/.f64 #s(literal 1 binary64) #s(literal 3 binary64))
cost-diff0
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)) (acos.f64 (*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t))))
Calls
Call 1
Inputs
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)) (acos.f64 (*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t))))
(/.f64 #s(literal 1 binary64) #s(literal 3 binary64))
#s(literal 1 binary64)
#s(literal 3 binary64)
(acos.f64 (*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t)))
(*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t))
(/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64)))
(*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64))))
(/.f64 x (*.f64 y #s(literal 27 binary64)))
x
(*.f64 y #s(literal 27 binary64))
y
#s(literal 27 binary64)
(*.f64 z #s(literal 2 binary64))
z
#s(literal 2 binary64)
(sqrt.f64 t)
t
Outputs
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)) (acos.f64 (*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t))))
(/.f64 #s(literal 1 binary64) #s(literal 3 binary64))
#s(literal 1 binary64)
#s(literal 3 binary64)
(acos.f64 (*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t)))
(*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t))
(/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64)))
(*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64))))
(/.f64 x (*.f64 y #s(literal 27 binary64)))
x
(*.f64 y #s(literal 27 binary64))
y
#s(literal 27 binary64)
(*.f64 z #s(literal 2 binary64))
z
#s(literal 2 binary64)
(sqrt.f64 t)
t

localize43.0ms (1%)

Memory
-16.5MiB live, 60.9MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.4388539355301271
(/.f64 x (*.f64 y #s(literal 27 binary64)))
accuracy0.9609375
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)) (acos.f64 (*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t))))
accuracy2.34379080763233
(*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t))
accuracy5.354151335082168
(/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64)))
Samples
31.0ms256×0valid
Compiler

Compiled 182 to 38 computations (79.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 16.0ms
ival-mult: 7.0ms (42.7% of total)
ival-div: 5.0ms (30.5% of total)
ival-sqrt: 2.0ms (12.2% of total)
ival-acos: 2.0ms (12.2% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series28.0ms (0.6%)

Memory
5.3MiB live, 42.1MiB allocated
Counts
6 → 8
Calls
Call 1
Inputs
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)) (acos.f64 (*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t))))
(/.f64 #s(literal 1 binary64) #s(literal 3 binary64))
(acos.f64 (*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t)))
(*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t))
(/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64)))
(/.f64 x (*.f64 y #s(literal 27 binary64)))
Outputs
(* 1/3 (acos (* 1/18 (* (sqrt t) (/ x (* y z))))))
(acos (* 1/18 (* (sqrt t) (/ x (* y z)))))
(* 1/18 (* (sqrt t) (/ x (* y z))))
(* 1/18 (/ x (* y z)))
(* 1/27 (/ x y))
(* 1/3 (acos (* 1/18 (* (sqrt t) (/ (* x (pow (sqrt -1) 2)) (* y z))))))
(acos (* 1/18 (* (sqrt t) (/ (* x (pow (sqrt -1) 2)) (* y z)))))
(* -1/18 (* (sqrt t) (/ (* x (pow (sqrt -1) 2)) (* y z))))
Calls

12 calls:

TimeVariablePointExpression
3.0ms
y
@0
((* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t))) (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)) (/ (* 3 (/ x (* y 27))) (* z 2)) (/ x (* y 27)))
3.0ms
x
@inf
((* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t))) (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)) (/ (* 3 (/ x (* y 27))) (* z 2)) (/ x (* y 27)))
3.0ms
x
@0
((* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t))) (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)) (/ (* 3 (/ x (* y 27))) (* z 2)) (/ x (* y 27)))
2.0ms
t
@-inf
((* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t))) (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)) (/ (* 3 (/ x (* y 27))) (* z 2)) (/ x (* y 27)))
2.0ms
x
@-inf
((* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t))) (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)) (/ (* 3 (/ x (* y 27))) (* z 2)) (/ x (* y 27)))

simplify0.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated
Algorithm
egg-herbie
Counts
8 → 6
Calls
Call 1
Inputs
(* 1/3 (acos (* 1/18 (* (sqrt t) (/ x (* y z))))))
(acos (* 1/18 (* (sqrt t) (/ x (* y z)))))
(* 1/18 (* (sqrt t) (/ x (* y z))))
(* 1/18 (/ x (* y z)))
(* 1/27 (/ x y))
(* 1/3 (acos (* 1/18 (* (sqrt t) (/ (* x (pow (sqrt -1) 2)) (* y z))))))
(acos (* 1/18 (* (sqrt t) (/ (* x (pow (sqrt -1) 2)) (* y z)))))
(* -1/18 (* (sqrt t) (/ (* x (pow (sqrt -1) 2)) (* y z))))
Outputs
(* 1/3 (acos (* 1/18 (* (sqrt t) (/ x (* y z))))))
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)) (acos.f64 (*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t))))
(acos (* 1/18 (* (sqrt t) (/ x (* y z)))))
(/.f64 #s(literal 1 binary64) #s(literal 3 binary64))
(* 1/18 (* (sqrt t) (/ x (* y z))))
(acos.f64 (*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t)))
(* 1/18 (/ x (* y z)))
(*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t))
(* 1/27 (/ x y))
(/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64)))
(* 1/3 (acos (* 1/18 (* (sqrt t) (/ (* x (pow (sqrt -1) 2)) (* y z))))))
(/.f64 x (*.f64 y #s(literal 27 binary64)))

rewrite0.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated
Counts
6 → 6
Calls
Call 1
Inputs
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)) (acos.f64 (*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t))))
(/.f64 #s(literal 1 binary64) #s(literal 3 binary64))
(acos.f64 (*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t)))
(*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t))
(/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64)))
(/.f64 x (*.f64 y #s(literal 27 binary64)))
Outputs
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)) (acos.f64 (*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t))))
(/.f64 #s(literal 1 binary64) #s(literal 3 binary64))
(acos.f64 (*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t)))
(*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t))
(/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64)))
(/.f64 x (*.f64 y #s(literal 27 binary64)))

eval1.0ms (0%)

Memory
2.8MiB live, 2.8MiB allocated
Compiler

Compiled 301 to 49 computations (83.7% saved)

prune2.0ms (0%)

Memory
4.0MiB live, 4.0MiB allocated
Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New10212
Fresh000
Picked011
Done000
Total10313
Accuracy
97.5%
Counts
13 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
97.3%
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)) (acos.f64 (*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t))))
16.9%
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)) #s(approx (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t))) (/.f64 #s(literal 1 binary64) #s(literal 3 binary64))))
3.5%
#s(approx (* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/.f64 x (*.f64 y #s(literal 27 binary64))))
Compiler

Compiled 67 to 60 computations (10.4% saved)

simplify1.0ms (0%)

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

Found 6 expressions of interest:

NewMetricScoreProgram
cost-diff0
#s(approx (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t))) (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)))
cost-diff0
(/.f64 #s(literal 1 binary64) #s(literal 3 binary64))
cost-diff0
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)) #s(approx (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t))) (/.f64 #s(literal 1 binary64) #s(literal 3 binary64))))
cost-diff0
(*.f64 y #s(literal 27 binary64))
cost-diff0
(/.f64 x (*.f64 y #s(literal 27 binary64)))
cost-diff0
#s(approx (* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/.f64 x (*.f64 y #s(literal 27 binary64))))
Calls
Call 1
Inputs
#s(approx (* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/.f64 x (*.f64 y #s(literal 27 binary64))))
(/.f64 x (*.f64 y #s(literal 27 binary64)))
x
(*.f64 y #s(literal 27 binary64))
y
#s(literal 27 binary64)
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)) #s(approx (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t))) (/.f64 #s(literal 1 binary64) #s(literal 3 binary64))))
(/.f64 #s(literal 1 binary64) #s(literal 3 binary64))
#s(literal 1 binary64)
#s(literal 3 binary64)
#s(approx (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t))) (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)))
Outputs
#s(approx (* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/.f64 x (*.f64 y #s(literal 27 binary64))))
(/.f64 x (*.f64 y #s(literal 27 binary64)))
x
(*.f64 y #s(literal 27 binary64))
y
#s(literal 27 binary64)
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)) #s(approx (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t))) (/.f64 #s(literal 1 binary64) #s(literal 3 binary64))))
(/.f64 #s(literal 1 binary64) #s(literal 3 binary64))
#s(literal 1 binary64)
#s(literal 3 binary64)
#s(approx (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t))) (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)))

localize50.0ms (1.1%)

Memory
-67.1MiB live, 57.4MiB allocated
Localize:

Found 6 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(/.f64 #s(literal 1 binary64) #s(literal 3 binary64))
accuracy0.9609375
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)) #s(approx (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t))) (/.f64 #s(literal 1 binary64) #s(literal 3 binary64))))
accuracy53.1618673859987
#s(approx (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t))) (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)))
accuracy0.0
(*.f64 y #s(literal 27 binary64))
accuracy0.4388539355301271
(/.f64 x (*.f64 y #s(literal 27 binary64)))
accuracy61.77510291251407
#s(approx (* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/.f64 x (*.f64 y #s(literal 27 binary64))))
Samples
30.0ms256×0valid
Compiler

Compiled 154 to 47 computations (69.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 20.0ms
ival-mult: 11.0ms (54.5% of total)
ival-div: 5.0ms (24.8% of total)
ival-sqrt: 2.0ms (9.9% of total)
ival-acos: 2.0ms (9.9% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series9.0ms (0.2%)

Memory
14.9MiB live, 14.9MiB allocated
Counts
6 → 6
Calls
Call 1
Inputs
#s(approx (* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/.f64 x (*.f64 y #s(literal 27 binary64))))
(/.f64 x (*.f64 y #s(literal 27 binary64)))
(*.f64 y #s(literal 27 binary64))
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)) #s(approx (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t))) (/.f64 #s(literal 1 binary64) #s(literal 3 binary64))))
(/.f64 #s(literal 1 binary64) #s(literal 3 binary64))
#s(approx (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t))) (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)))
Outputs
(* 1/3 (acos (* 1/18 (* (sqrt t) (/ x (* y z))))))
(* 1/27 (/ x y))
(acos (* 1/18 (* (sqrt t) (/ x (* y z)))))
(* 27 y)
(* 1/3 (acos (* 1/18 (* (sqrt t) (/ (* x (pow (sqrt -1) 2)) (* y z))))))
(acos (* 1/18 (* (sqrt t) (/ (* x (pow (sqrt -1) 2)) (* y z)))))
Calls

12 calls:

TimeVariablePointExpression
4.0ms
y
@0
((* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/ x (* y 27)) (* y 27) (* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t))))
1.0ms
y
@-inf
((* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/ x (* y 27)) (* y 27) (* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t))))
1.0ms
y
@inf
((* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/ x (* y 27)) (* y 27) (* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t))))
1.0ms
x
@0
((* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/ x (* y 27)) (* y 27) (* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t))))
1.0ms
x
@inf
((* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/ x (* y 27)) (* y 27) (* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t))))

simplify0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated
Algorithm
egg-herbie
Counts
6 → 6
Calls
Call 1
Inputs
(* 1/3 (acos (* 1/18 (* (sqrt t) (/ x (* y z))))))
(* 1/27 (/ x y))
(acos (* 1/18 (* (sqrt t) (/ x (* y z)))))
(* 27 y)
(* 1/3 (acos (* 1/18 (* (sqrt t) (/ (* x (pow (sqrt -1) 2)) (* y z))))))
(acos (* 1/18 (* (sqrt t) (/ (* x (pow (sqrt -1) 2)) (* y z)))))
Outputs
(* 1/3 (acos (* 1/18 (* (sqrt t) (/ x (* y z))))))
#s(approx (* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/.f64 x (*.f64 y #s(literal 27 binary64))))
(* 1/27 (/ x y))
(/.f64 x (*.f64 y #s(literal 27 binary64)))
(acos (* 1/18 (* (sqrt t) (/ x (* y z)))))
(*.f64 y #s(literal 27 binary64))
(* 27 y)
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)) #s(approx (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t))) (/.f64 #s(literal 1 binary64) #s(literal 3 binary64))))
(* 1/3 (acos (* 1/18 (* (sqrt t) (/ (* x (pow (sqrt -1) 2)) (* y z))))))
(/.f64 #s(literal 1 binary64) #s(literal 3 binary64))
(acos (* 1/18 (* (sqrt t) (/ (* x (pow (sqrt -1) 2)) (* y z)))))
#s(approx (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t))) (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)))

rewrite0.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated
Counts
6 → 6
Calls
Call 1
Inputs
#s(approx (* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/.f64 x (*.f64 y #s(literal 27 binary64))))
(/.f64 x (*.f64 y #s(literal 27 binary64)))
(*.f64 y #s(literal 27 binary64))
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)) #s(approx (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t))) (/.f64 #s(literal 1 binary64) #s(literal 3 binary64))))
(/.f64 #s(literal 1 binary64) #s(literal 3 binary64))
#s(approx (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t))) (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)))
Outputs
#s(approx (* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/.f64 x (*.f64 y #s(literal 27 binary64))))
(/.f64 x (*.f64 y #s(literal 27 binary64)))
(*.f64 y #s(literal 27 binary64))
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)) #s(approx (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t))) (/.f64 #s(literal 1 binary64) #s(literal 3 binary64))))
(/.f64 #s(literal 1 binary64) #s(literal 3 binary64))
#s(approx (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t))) (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)))

eval1.0ms (0%)

Memory
3.2MiB live, 3.2MiB allocated
Compiler

Compiled 377 to 38 computations (89.9% saved)

prune1.0ms (0%)

Memory
3.1MiB live, 3.1MiB allocated
Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New12113
Fresh000
Picked202
Done011
Total14216
Accuracy
97.6%
Counts
16 → 2
Alt Table
Click to see full alt table
StatusAccuracyProgram
97.3%
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)) (acos.f64 (*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t))))
19.5%
#s(approx (* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)))
Compiler

Compiled 42 to 40 computations (4.8% saved)

simplify0.0ms (0%)

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

Found 2 expressions of interest:

NewMetricScoreProgram
cost-diff0
(/.f64 #s(literal 1 binary64) #s(literal 3 binary64))
cost-diff0
#s(approx (* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)))
Calls
Call 1
Inputs
#s(approx (* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)))
(/.f64 #s(literal 1 binary64) #s(literal 3 binary64))
#s(literal 1 binary64)
#s(literal 3 binary64)
Outputs
#s(approx (* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)))
(/.f64 #s(literal 1 binary64) #s(literal 3 binary64))
#s(literal 1 binary64)
#s(literal 3 binary64)

localize35.0ms (0.8%)

Memory
-24.5MiB live, 52.6MiB allocated
Localize:

Found 2 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(/.f64 #s(literal 1 binary64) #s(literal 3 binary64))
accuracy51.51372900936501
#s(approx (* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)))
Samples
26.0ms256×0valid
Compiler

Compiled 54 to 42 computations (22.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 18.0ms
ival-mult: 9.0ms (48.9% of total)
ival-div: 5.0ms (27.2% of total)
ival-sqrt: 2.0ms (10.9% of total)
ival-acos: 2.0ms (10.9% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series3.0ms (0.1%)

Memory
4.7MiB live, 4.7MiB allocated
Counts
2 → 2
Calls
Call 1
Inputs
#s(approx (* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)))
(/.f64 #s(literal 1 binary64) #s(literal 3 binary64))
Outputs
(* 1/3 (acos (* 1/18 (* (sqrt t) (/ x (* y z))))))
(* 1/3 (acos (* 1/18 (* (sqrt t) (/ (* x (pow (sqrt -1) 2)) (* y z))))))
Calls

12 calls:

TimeVariablePointExpression
0.0ms
x
@0
((* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/ 1 3))
0.0ms
z
@inf
((* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/ 1 3))
0.0ms
t
@-inf
((* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/ 1 3))
0.0ms
x
@inf
((* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/ 1 3))
0.0ms
x
@-inf
((* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/ 1 3))

simplify0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated
Algorithm
egg-herbie
Counts
2 → 2
Calls
Call 1
Inputs
(* 1/3 (acos (* 1/18 (* (sqrt t) (/ x (* y z))))))
(* 1/3 (acos (* 1/18 (* (sqrt t) (/ (* x (pow (sqrt -1) 2)) (* y z))))))
Outputs
(* 1/3 (acos (* 1/18 (* (sqrt t) (/ x (* y z))))))
#s(approx (* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)))
(* 1/3 (acos (* 1/18 (* (sqrt t) (/ (* x (pow (sqrt -1) 2)) (* y z))))))
(/.f64 #s(literal 1 binary64) #s(literal 3 binary64))

rewrite0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated
Counts
2 → 2
Calls
Call 1
Inputs
#s(approx (* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)))
(/.f64 #s(literal 1 binary64) #s(literal 3 binary64))
Outputs
#s(approx (* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)))
(/.f64 #s(literal 1 binary64) #s(literal 3 binary64))

eval0.0ms (0%)

Memory
1.0MiB live, 1.0MiB allocated
Compiler

Compiled 89 to 23 computations (74.2% saved)

prune2.0ms (0.1%)

Memory
4.1MiB live, 4.1MiB allocated
Pruning

2 alts after pruning (0 fresh and 2 done)

PrunedKeptTotal
New303
Fresh000
Picked011
Done011
Total325
Accuracy
97.6%
Counts
5 → 2
Alt Table
Click to see full alt table
StatusAccuracyProgram
97.3%
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)) (acos.f64 (*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t))))
19.5%
#s(approx (* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)))
Compiler

Compiled 132 to 76 computations (42.4% saved)

regimes25.0ms (0.6%)

Memory
20.1MiB live, 58.6MiB allocated
Counts
4 → 1
Calls
Call 1
Inputs
#s(approx (* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)))
#s(approx (* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/.f64 x (*.f64 y #s(literal 27 binary64))))
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)) #s(approx (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t))) (/.f64 #s(literal 1 binary64) #s(literal 3 binary64))))
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)) (acos.f64 (*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t))))
Outputs
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)) (acos.f64 (*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t))))
Calls

13 calls:

3.0ms
(*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t))
2.0ms
(sqrt.f64 t)
2.0ms
(*.f64 y #s(literal 27 binary64))
2.0ms
(*.f64 z #s(literal 2 binary64))
2.0ms
z
Results
AccuracySegmentsBranch
97.3%1x
97.3%1y
97.3%1z
97.3%1t
97.3%1(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)) (acos.f64 (*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t))))
97.3%1(acos.f64 (*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t)))
97.3%1(*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t))
97.3%1(/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64)))
97.3%1(*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64))))
97.3%1(/.f64 x (*.f64 y #s(literal 27 binary64)))
97.3%1(*.f64 y #s(literal 27 binary64))
97.3%1(*.f64 z #s(literal 2 binary64))
97.3%1(sqrt.f64 t)
Compiler

Compiled 83 to 108 computations (-30.1% saved)

regimes28.0ms (0.6%)

Memory
-32.7MiB live, 47.7MiB allocated
Accuracy

Total -10.3b remaining (-19.9%)

Threshold costs -10.3b (-19.9%)

Counts
3 → 1
Calls
Call 1
Inputs
#s(approx (* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)))
#s(approx (* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/.f64 x (*.f64 y #s(literal 27 binary64))))
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)) #s(approx (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t))) (/.f64 #s(literal 1 binary64) #s(literal 3 binary64))))
Outputs
#s(approx (* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)))
Calls

13 calls:

6.0ms
(*.f64 z #s(literal 2 binary64))
2.0ms
(sqrt.f64 t)
2.0ms
(*.f64 y #s(literal 27 binary64))
2.0ms
(*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64))))
2.0ms
y
Results
AccuracySegmentsBranch
19.5%1x
19.5%1y
19.5%1z
19.5%1t
19.5%1(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)) (acos.f64 (*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t))))
19.5%1(acos.f64 (*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t)))
19.5%1(*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t))
19.5%1(/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64)))
19.5%1(*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64))))
19.5%1(/.f64 x (*.f64 y #s(literal 27 binary64)))
19.5%1(*.f64 y #s(literal 27 binary64))
19.5%1(*.f64 z #s(literal 2 binary64))
19.5%1(sqrt.f64 t)
Compiler

Compiled 83 to 108 computations (-30.1% saved)

simplify5.0ms (0.1%)

Memory
11.3MiB live, 11.3MiB allocated
Algorithm
egg-herbie
Calls
Call 1
Inputs
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)) (acos.f64 (*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t))))
#s(approx (* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)))
Outputs
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)) (acos.f64 (*.f64 (/.f64 (*.f64 #s(literal 3 binary64) (/.f64 x (*.f64 y #s(literal 27 binary64)))) (*.f64 z #s(literal 2 binary64))) (sqrt.f64 t))))
#s(approx (* (/ 1 3) (acos (* (/ (* 3 (/ x (* y 27))) (* z 2)) (sqrt t)))) (/.f64 #s(literal 1 binary64) #s(literal 3 binary64)))

soundness1.0ms (0%)

Memory
1.5MiB live, 1.5MiB allocated
Stop Event
done
Compiler

Compiled 42 to 33 computations (21.4% saved)

preprocess33.0ms (0.8%)

Memory
24.7MiB live, 62.4MiB allocated
Compiler

Compiled 156 to 134 computations (14.1% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...