Henrywood and Agarwal, Equation (3)

Time bar (total: 3.2s)

start0.0ms (0%)

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

analyze327.0ms (10.2%)

Memory
-17.5MiB live, 606.7MiB allocated; 131ms collecting garbage
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
12.5%12.5%87.3%0.2%0%0%0%5
12.5%12.5%87.3%0.2%0%0%0%6
12.5%12.5%87.3%0.2%0%0%0%7
18.8%18.7%81.1%0.2%0%0%0%8
28.6%28.1%70.2%0.2%0%1.6%0%9
28.6%28.1%70.2%0.2%0%1.6%0%10
28.8%28.1%69.4%0.2%0%2.3%0%11
36.1%32.7%58.1%0.2%0%9%0%12
Compiler

Compiled 10 to 10 computations (0% saved)

sample2.4s (74.5%)

Memory
-84.7MiB live, 2 881.5MiB allocated; 1.5s collecting garbage
Samples
1.2s8 256×0valid
493.0ms6 973×0invalid
Precisions
Click to see histograms. Total time spent on operations: 1.1s
ival-div: 734.0ms (65.2% of total)
ival-mult: 228.0ms (20.2% of total)
ival-sqrt: 155.0ms (13.8% of total)
ival-assert: 6.0ms (0.5% of total)
adjust: 4.0ms (0.4% of total)
Bogosity

explain76.0ms (2.4%)

Memory
26.7MiB live, 170.9MiB allocated; 11ms collecting garbage
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
700-4(-1.3953991270500856e-244 -4.7537847918754316e-250 -3.808977802179863e+296 4.286625201724515e-236)(sqrt.f64 (/.f64 A (*.f64 V l)))
131(2.586892704387954e-95 7.803955820515803e+102 7.982637342909954e+214 5.338788768460787e+210)1(-7.171898654666183e-77 9.879725947156066e-134 -1.933765391750816e-36 -1.641986786342204e-278)(/.f64 A (*.f64 V l))
50-0-(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
00-0-A
00-0-(*.f64 V l)
00-0-V
00-0-l
00-0-c0
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
sqrt.f64(sqrt.f64 (/.f64 A (*.f64 V l)))oflow-rescue350
(sqrt.f64 (/.f64 A (*.f64 V l)))overflow7
(/.f64 A (*.f64 V l))overflow42
(*.f64 V l)overflow30
sqrt.f64(sqrt.f64 (/.f64 A (*.f64 V l)))uflow-rescue310
(sqrt.f64 (/.f64 A (*.f64 V l)))underflow4
(/.f64 A (*.f64 V l))underflow35
(*.f64 V l)underflow30
/.f64(/.f64 A (*.f64 V l))n/o70
(*.f64 V l)overflow30
/.f64(/.f64 A (*.f64 V l))n/u60
(*.f64 V l)underflow30
*.f64(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))n*o50
Confusion
Predicted +Predicted -
+522
-32170
Precision
0.6190476190476191
Recall
0.9629629629629629
Confusion?
Predicted +Predicted MaybePredicted -
+5202
-320170
Precision?
0.6190476190476191
Recall?
0.9629629629629629
Freqs
test
numberfreq
0172
184
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
33.0ms512×0valid
Compiler

Compiled 64 to 28 computations (56.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 16.0ms
ival-mult: 7.0ms (44.5% of total)
ival-div: 5.0ms (31.8% of total)
ival-sqrt: 3.0ms (19.1% of total)
ival-true: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess23.0ms (0.7%)

Memory
2.4MiB live, 48.8MiB allocated; 3ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
051130
1102130
2126130
3164130
4212130
5271130
6337130
7400130
8472130
9487130
10502130
088
0128
1168
2188
0188
Stop Event
iter limit
saturated
iter limit
saturated
Calls
Call 1
Inputs
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
Outputs
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(*.f64 (sqrt.f64 (/.f64 A (*.f64 l V))) c0)
Symmetry

(negabs c0)

(sort V l)

Compiler

Compiled 8 to 8 computations (0% saved)

eval0.0ms (0%)

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

Compiled 0 to 4 computations (-∞% saved)

prune0.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated; 0ms collecting garbage
Alt Table
Click to see full alt table
StatusAccuracyProgram
80.5%
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
Compiler

Compiled 8 to 8 computations (0% saved)

series21.0ms (0.7%)

Memory
-1.5MiB live, 44.9MiB allocated; 3ms collecting garbage
Counts
8 → 12
Calls
Call 1
Inputs
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
c0
(sqrt.f64 (/.f64 A (*.f64 V l)))
(/.f64 A (*.f64 V l))
A
(*.f64 V l)
V
l
Outputs
#s(approx (* c0 (sqrt (/ A (* V l)))) #s(hole binary64 (* (sqrt (/ A (* V l))) c0)))
#s(approx c0 #s(hole binary64 c0))
#s(approx (sqrt (/ A (* V l))) #s(hole binary64 (sqrt (/ A (* V l)))))
#s(approx (/ A (* V l)) #s(hole binary64 (/ A (* V l))))
#s(approx A #s(hole binary64 A))
#s(approx (* c0 (sqrt (/ A (* V l)))) #s(hole binary64 (* -1 (* (sqrt (/ A (* V l))) (* c0 (pow (sqrt -1) 2))))))
#s(approx (sqrt (/ A (* V l))) #s(hole binary64 (* -1 (* (sqrt (/ A (* V l))) (pow (sqrt -1) 2)))))
#s(approx (* V l) #s(hole binary64 (* V l)))
#s(approx V #s(hole binary64 V))
#s(approx (* c0 (sqrt (/ A (* V l)))) #s(hole binary64 (* (sqrt (/ A (* V l))) (* c0 (pow (sqrt -1) 2)))))
#s(approx (sqrt (/ A (* V l))) #s(hole binary64 (* (sqrt (/ A (* V l))) (pow (sqrt -1) 2))))
#s(approx l #s(hole binary64 l))
Calls

12 calls:

TimeVariablePointExpression
4.0ms
c0
@0
((* c0 (sqrt (/ A (* V l)))) c0 (sqrt (/ A (* V l))) (/ A (* V l)) A (* V l) V l)
2.0ms
l
@0
((* c0 (sqrt (/ A (* V l)))) c0 (sqrt (/ A (* V l))) (/ A (* V l)) A (* V l) V l)
2.0ms
A
@-inf
((* c0 (sqrt (/ A (* V l)))) c0 (sqrt (/ A (* V l))) (/ A (* V l)) A (* V l) V l)
2.0ms
A
@inf
((* c0 (sqrt (/ A (* V l)))) c0 (sqrt (/ A (* V l))) (/ A (* V l)) A (* V l) V l)
2.0ms
V
@-inf
((* c0 (sqrt (/ A (* V l)))) c0 (sqrt (/ A (* V l))) (/ A (* V l)) A (* V l) V l)

rewrite28.0ms (0.9%)

Memory
1.9MiB live, 51.0MiB allocated; 5ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
034170
039156
079156
Stop Event
iter limit
iter limit
iter limit
unsound
iter limit
Counts
20 → 26
Calls
Call 1
Inputs
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
c0
(sqrt.f64 (/.f64 A (*.f64 V l)))
(/.f64 A (*.f64 V l))
A
(*.f64 V l)
V
l
#s(approx (* c0 (sqrt (/ A (* V l)))) #s(hole binary64 (* (sqrt (/ A (* V l))) c0)))
#s(approx c0 #s(hole binary64 c0))
#s(approx (sqrt (/ A (* V l))) #s(hole binary64 (sqrt (/ A (* V l)))))
#s(approx (/ A (* V l)) #s(hole binary64 (/ A (* V l))))
#s(approx A #s(hole binary64 A))
#s(approx (* c0 (sqrt (/ A (* V l)))) #s(hole binary64 (* -1 (* (sqrt (/ A (* V l))) (* c0 (pow (sqrt -1) 2))))))
#s(approx (sqrt (/ A (* V l))) #s(hole binary64 (* -1 (* (sqrt (/ A (* V l))) (pow (sqrt -1) 2)))))
#s(approx (* V l) #s(hole binary64 (* V l)))
#s(approx V #s(hole binary64 V))
#s(approx (* c0 (sqrt (/ A (* V l)))) #s(hole binary64 (* (sqrt (/ A (* V l))) (* c0 (pow (sqrt -1) 2)))))
#s(approx (sqrt (/ A (* V l))) #s(hole binary64 (* (sqrt (/ A (* V l))) (pow (sqrt -1) 2))))
#s(approx l #s(hole binary64 l))
Outputs
(*.f64 (sqrt.f64 (/.f64 A (*.f64 l V))) c0)
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 l V))))
c0
(pow.f64 (/.f64 A (*.f64 l V)) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 A) (sqrt.f64 (*.f64 l V)))
(sqrt.f64 (/.f64 A (*.f64 l V)))
(/.f64 (/.f64 A V) l)
(/.f64 (neg.f64 A) (neg.f64 (*.f64 l V)))
(/.f64 A (*.f64 l V))
A
(*.f64 l V)
(*.f64 V l)
V
l
#s(approx (* c0 (sqrt (/ A (* V l)))) (*.f64 (sqrt.f64 (/.f64 A (*.f64 l V))) c0))
#s(approx c0 c0)
#s(approx (sqrt (/ A (* V l))) (sqrt.f64 (/.f64 A (*.f64 l V))))
#s(approx (/ A (* V l)) (/.f64 A (*.f64 l V)))
#s(approx A A)
#s(approx (* c0 (sqrt (/ A (* V l)))) (neg.f64 (*.f64 (*.f64 #s(literal -1 binary64) c0) (sqrt.f64 (/.f64 A (*.f64 l V))))))
#s(approx (sqrt (/ A (* V l))) (neg.f64 (*.f64 #s(literal -1 binary64) (sqrt.f64 (/.f64 A (*.f64 l V))))))
#s(approx (* V l) (*.f64 l V))
#s(approx V V)
#s(approx (* c0 (sqrt (/ A (* V l)))) (*.f64 (*.f64 #s(literal -1 binary64) c0) (sqrt.f64 (/.f64 A (*.f64 l V)))))
#s(approx (sqrt (/ A (* V l))) (*.f64 #s(literal -1 binary64) (sqrt.f64 (/.f64 A (*.f64 l V)))))
#s(approx l l)

eval6.0ms (0.2%)

Memory
-38.2MiB live, 8.2MiB allocated; 3ms collecting garbage
Compiler

Compiled 288 to 71 computations (75.3% saved)

prune3.0ms (0.1%)

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

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New24226
Fresh000
Picked011
Done000
Total24327
Accuracy
88.4%
Counts
27 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
43.7%
(*.f64 c0 (/.f64 (sqrt.f64 A) (sqrt.f64 (*.f64 l V))))
78.2%
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))
80.5%
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
Compiler

Compiled 25 to 25 computations (0% saved)

series19.0ms (0.6%)

Memory
-7.4MiB live, 38.6MiB allocated; 3ms collecting garbage
Counts
13 → 21
Calls
Call 1
Inputs
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))
c0
(sqrt.f64 (/.f64 (/.f64 A V) l))
(/.f64 (/.f64 A V) l)
(/.f64 A V)
A
V
l
(*.f64 c0 (/.f64 (sqrt.f64 A) (sqrt.f64 (*.f64 l V))))
(/.f64 (sqrt.f64 A) (sqrt.f64 (*.f64 l V)))
(sqrt.f64 A)
(sqrt.f64 (*.f64 l V))
(*.f64 l V)
Outputs
#s(approx (* c0 (sqrt (/ (/ A V) l))) #s(hole binary64 (* (sqrt (/ A (* V l))) c0)))
#s(approx c0 #s(hole binary64 c0))
#s(approx (* c0 (/ (sqrt A) (sqrt (* l V)))) #s(hole binary64 (* (sqrt (/ A (* V l))) c0)))
#s(approx (sqrt (/ (/ A V) l)) #s(hole binary64 (sqrt (/ A (* V l)))))
#s(approx (/ (/ A V) l) #s(hole binary64 (/ A (* V l))))
#s(approx (/ A V) #s(hole binary64 (/ A V)))
#s(approx A #s(hole binary64 A))
#s(approx (/ (sqrt A) (sqrt (* l V))) #s(hole binary64 (sqrt (/ A (* V l)))))
#s(approx (sqrt A) #s(hole binary64 (sqrt A)))
#s(approx (* c0 (sqrt (/ (/ A V) l))) #s(hole binary64 (* -1 (* (sqrt (/ A (* V l))) (* c0 (pow (sqrt -1) 2))))))
#s(approx (sqrt (/ (/ A V) l)) #s(hole binary64 (* -1 (* (sqrt (/ A (* V l))) (pow (sqrt -1) 2)))))
#s(approx (* c0 (/ (sqrt A) (sqrt (* l V)))) #s(hole binary64 (* -1 (* (sqrt (/ A (* V l))) (* c0 (pow (sqrt -1) 2))))))
#s(approx (/ (sqrt A) (sqrt (* l V))) #s(hole binary64 (* -1 (* (sqrt (/ A (* V l))) (pow (sqrt -1) 2)))))
#s(approx (sqrt A) #s(hole binary64 (* -1 (* (sqrt A) (pow (sqrt -1) 2)))))
#s(approx V #s(hole binary64 V))
#s(approx (sqrt (* l V)) #s(hole binary64 (sqrt (* V l))))
#s(approx (* l V) #s(hole binary64 (* V l)))
#s(approx (* c0 (sqrt (/ (/ A V) l))) #s(hole binary64 (* (sqrt (/ A (* V l))) (* c0 (pow (sqrt -1) 2)))))
#s(approx (sqrt (/ (/ A V) l)) #s(hole binary64 (* (sqrt (/ A (* V l))) (pow (sqrt -1) 2))))
#s(approx (sqrt (* l V)) #s(hole binary64 (* -1 (* (sqrt (* V l)) (pow (sqrt -1) 2)))))
#s(approx l #s(hole binary64 l))
Calls

12 calls:

TimeVariablePointExpression
3.0ms
V
@-inf
((* c0 (sqrt (/ (/ A V) l))) c0 (sqrt (/ (/ A V) l)) (/ (/ A V) l) (/ A V) A V l (* c0 (/ (sqrt A) (sqrt (* l V)))) (/ (sqrt A) (sqrt (* l V))) (sqrt A) (sqrt (* l V)) (* l V))
3.0ms
l
@-inf
((* c0 (sqrt (/ (/ A V) l))) c0 (sqrt (/ (/ A V) l)) (/ (/ A V) l) (/ A V) A V l (* c0 (/ (sqrt A) (sqrt (* l V)))) (/ (sqrt A) (sqrt (* l V))) (sqrt A) (sqrt (* l V)) (* l V))
2.0ms
A
@-inf
((* c0 (sqrt (/ (/ A V) l))) c0 (sqrt (/ (/ A V) l)) (/ (/ A V) l) (/ A V) A V l (* c0 (/ (sqrt A) (sqrt (* l V)))) (/ (sqrt A) (sqrt (* l V))) (sqrt A) (sqrt (* l V)) (* l V))
2.0ms
l
@0
((* c0 (sqrt (/ (/ A V) l))) c0 (sqrt (/ (/ A V) l)) (/ (/ A V) l) (/ A V) A V l (* c0 (/ (sqrt A) (sqrt (* l V)))) (/ (sqrt A) (sqrt (* l V))) (sqrt A) (sqrt (* l V)) (* l V))
1.0ms
A
@inf
((* c0 (sqrt (/ (/ A V) l))) c0 (sqrt (/ (/ A V) l)) (/ (/ A V) l) (/ A V) A V l (* c0 (/ (sqrt A) (sqrt (* l V)))) (/ (sqrt A) (sqrt (* l V))) (sqrt A) (sqrt (* l V)) (* l V))

rewrite21.0ms (0.7%)

Memory
-6.7MiB live, 39.9MiB allocated; 2ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
061322
074286
0159286
Stop Event
iter limit
iter limit
iter limit
unsound
iter limit
Counts
34 → 55
Calls
Call 1
Inputs
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))
c0
(sqrt.f64 (/.f64 (/.f64 A V) l))
(/.f64 (/.f64 A V) l)
(/.f64 A V)
A
V
l
(*.f64 c0 (/.f64 (sqrt.f64 A) (sqrt.f64 (*.f64 l V))))
(/.f64 (sqrt.f64 A) (sqrt.f64 (*.f64 l V)))
(sqrt.f64 A)
(sqrt.f64 (*.f64 l V))
(*.f64 l V)
#s(approx (* c0 (sqrt (/ (/ A V) l))) #s(hole binary64 (* (sqrt (/ A (* V l))) c0)))
#s(approx c0 #s(hole binary64 c0))
#s(approx (* c0 (/ (sqrt A) (sqrt (* l V)))) #s(hole binary64 (* (sqrt (/ A (* V l))) c0)))
#s(approx (sqrt (/ (/ A V) l)) #s(hole binary64 (sqrt (/ A (* V l)))))
#s(approx (/ (/ A V) l) #s(hole binary64 (/ A (* V l))))
#s(approx (/ A V) #s(hole binary64 (/ A V)))
#s(approx A #s(hole binary64 A))
#s(approx (/ (sqrt A) (sqrt (* l V))) #s(hole binary64 (sqrt (/ A (* V l)))))
#s(approx (sqrt A) #s(hole binary64 (sqrt A)))
#s(approx (* c0 (sqrt (/ (/ A V) l))) #s(hole binary64 (* -1 (* (sqrt (/ A (* V l))) (* c0 (pow (sqrt -1) 2))))))
#s(approx (sqrt (/ (/ A V) l)) #s(hole binary64 (* -1 (* (sqrt (/ A (* V l))) (pow (sqrt -1) 2)))))
#s(approx (* c0 (/ (sqrt A) (sqrt (* l V)))) #s(hole binary64 (* -1 (* (sqrt (/ A (* V l))) (* c0 (pow (sqrt -1) 2))))))
#s(approx (/ (sqrt A) (sqrt (* l V))) #s(hole binary64 (* -1 (* (sqrt (/ A (* V l))) (pow (sqrt -1) 2)))))
#s(approx (sqrt A) #s(hole binary64 (* -1 (* (sqrt A) (pow (sqrt -1) 2)))))
#s(approx V #s(hole binary64 V))
#s(approx (sqrt (* l V)) #s(hole binary64 (sqrt (* V l))))
#s(approx (* l V) #s(hole binary64 (* V l)))
#s(approx (* c0 (sqrt (/ (/ A V) l))) #s(hole binary64 (* (sqrt (/ A (* V l))) (* c0 (pow (sqrt -1) 2)))))
#s(approx (sqrt (/ (/ A V) l)) #s(hole binary64 (* (sqrt (/ A (* V l))) (pow (sqrt -1) 2))))
#s(approx (sqrt (* l V)) #s(hole binary64 (* -1 (* (sqrt (* V l)) (pow (sqrt -1) 2)))))
#s(approx l #s(hole binary64 l))
Outputs
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))
(/.f64 (*.f64 c0 (sqrt.f64 A)) (sqrt.f64 (*.f64 l V)))
c0
(pow.f64 (/.f64 (/.f64 A V) l) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (sqrt.f64 A)) (neg.f64 (sqrt.f64 (*.f64 l V))))
(/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))
(/.f64 (sqrt.f64 A) (sqrt.f64 (*.f64 l V)))
(sqrt.f64 (/.f64 (/.f64 A V) l))
(/.f64 (neg.f64 (/.f64 A V)) (neg.f64 l))
(/.f64 (neg.f64 A) (neg.f64 (*.f64 l V)))
(/.f64 (/.f64 A V) l)
(/.f64 A (*.f64 l V))
(/.f64 (neg.f64 A) (neg.f64 V))
(/.f64 A V)
A
V
l
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))
(/.f64 (*.f64 c0 (sqrt.f64 A)) (sqrt.f64 (*.f64 l V)))
(pow.f64 (/.f64 (/.f64 A V) l) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (sqrt.f64 A)) (neg.f64 (sqrt.f64 (*.f64 l V))))
(/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))
(/.f64 (sqrt.f64 A) (sqrt.f64 (*.f64 l V)))
(sqrt.f64 (/.f64 (/.f64 A V) l))
(pow.f64 A #s(literal 1/2 binary64))
(sqrt.f64 A)
(*.f64 (sqrt.f64 l) (sqrt.f64 V))
(*.f64 (sqrt.f64 V) (sqrt.f64 l))
(pow.f64 (*.f64 l V) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 l V))
(*.f64 l V)
(*.f64 V l)
#s(approx (* c0 (/ (sqrt A) (sqrt (* l V)))) (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0))
#s(approx c0 c0)
#s(approx (* c0 (/ (sqrt A) (sqrt (* l V)))) (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0))
#s(approx (sqrt (/ (/ A V) l)) (sqrt.f64 (/.f64 (/.f64 A V) l)))
#s(approx (/ (/ A V) l) (/.f64 (/.f64 A V) l))
#s(approx (/ A V) (/.f64 A V))
#s(approx A A)
#s(approx (sqrt (/ (/ A V) l)) (sqrt.f64 (/.f64 (/.f64 A V) l)))
#s(approx (sqrt A) (sqrt.f64 A))
#s(approx (* c0 (/ (sqrt A) (sqrt (* l V)))) (neg.f64 (*.f64 (*.f64 #s(literal -1 binary64) c0) (sqrt.f64 (/.f64 (/.f64 A V) l)))))
#s(approx (sqrt (/ (/ A V) l)) (neg.f64 (*.f64 #s(literal -1 binary64) (sqrt.f64 (/.f64 (/.f64 A V) l)))))
#s(approx (* c0 (/ (sqrt A) (sqrt (* l V)))) (neg.f64 (*.f64 (*.f64 #s(literal -1 binary64) c0) (sqrt.f64 (/.f64 (/.f64 A V) l)))))
#s(approx (sqrt (/ (/ A V) l)) (neg.f64 (*.f64 #s(literal -1 binary64) (sqrt.f64 (/.f64 (/.f64 A V) l)))))
#s(approx (sqrt A) (neg.f64 (*.f64 #s(literal -1 binary64) (sqrt.f64 A))))
#s(approx V V)
#s(approx (sqrt (* l V)) (sqrt.f64 (*.f64 l V)))
#s(approx (* l V) (*.f64 l V))
#s(approx (* c0 (/ (sqrt A) (sqrt (* l V)))) (*.f64 (*.f64 #s(literal -1 binary64) c0) (sqrt.f64 (/.f64 (/.f64 A V) l))))
#s(approx (sqrt (/ (/ A V) l)) (*.f64 #s(literal -1 binary64) (sqrt.f64 (/.f64 (/.f64 A V) l))))
#s(approx (sqrt (* l V)) (neg.f64 (*.f64 #s(literal -1 binary64) (sqrt.f64 (*.f64 l V)))))
#s(approx l l)

eval6.0ms (0.2%)

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

Compiled 559 to 140 computations (75% saved)

prune3.0ms (0.1%)

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

6 alts after pruning (3 fresh and 3 done)

PrunedKeptTotal
New48351
Fresh000
Picked022
Done011
Total48654
Accuracy
93.7%
Counts
54 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
43.0%
(/.f64 (*.f64 c0 (sqrt.f64 A)) (sqrt.f64 (*.f64 l V)))
64.6%
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)))
26.1%
(*.f64 c0 (/.f64 (sqrt.f64 A) (*.f64 (sqrt.f64 l) (sqrt.f64 V))))
43.7%
(*.f64 c0 (/.f64 (sqrt.f64 A) (sqrt.f64 (*.f64 l V))))
78.2%
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))
80.5%
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
Compiler

Compiled 53 to 53 computations (0% saved)

series28.0ms (0.9%)

Memory
-2.8MiB live, 48.8MiB allocated; 13ms collecting garbage
Counts
18 → 33
Calls
Call 1
Inputs
(*.f64 c0 (/.f64 (sqrt.f64 A) (*.f64 (sqrt.f64 l) (sqrt.f64 V))))
c0
(/.f64 (sqrt.f64 A) (*.f64 (sqrt.f64 l) (sqrt.f64 V)))
(sqrt.f64 A)
A
(*.f64 (sqrt.f64 l) (sqrt.f64 V))
(sqrt.f64 l)
l
(sqrt.f64 V)
V
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)))
(/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))
(sqrt.f64 (/.f64 A V))
(/.f64 A V)
(/.f64 (*.f64 c0 (sqrt.f64 A)) (sqrt.f64 (*.f64 l V)))
(*.f64 c0 (sqrt.f64 A))
(sqrt.f64 (*.f64 l V))
(*.f64 l V)
Outputs
#s(approx (* c0 (/ (sqrt A) (* (sqrt l) (sqrt V)))) #s(hole binary64 (* (sqrt (/ A (* V l))) c0)))
#s(approx c0 #s(hole binary64 c0))
#s(approx (* c0 (/ (sqrt (/ A V)) (sqrt l))) #s(hole binary64 (* (sqrt (/ A (* V l))) c0)))
#s(approx (/ (* c0 (sqrt A)) (sqrt (* l V))) #s(hole binary64 (* (sqrt (/ A (* V l))) c0)))
#s(approx (* c0 (sqrt A)) #s(hole binary64 (* (sqrt A) c0)))
#s(approx (/ (sqrt A) (* (sqrt l) (sqrt V))) #s(hole binary64 (sqrt (/ A (* V l)))))
#s(approx (sqrt A) #s(hole binary64 (sqrt A)))
#s(approx A #s(hole binary64 A))
#s(approx (/ (sqrt (/ A V)) (sqrt l)) #s(hole binary64 (sqrt (/ A (* V l)))))
#s(approx (sqrt (/ A V)) #s(hole binary64 (sqrt (/ A V))))
#s(approx (/ A V) #s(hole binary64 (/ A V)))
#s(approx (* c0 (/ (sqrt A) (* (sqrt l) (sqrt V)))) #s(hole binary64 (* -1 (* (sqrt (/ A (* V l))) (* c0 (pow (sqrt -1) 2))))))
#s(approx (/ (sqrt A) (* (sqrt l) (sqrt V))) #s(hole binary64 (* -1 (* (sqrt (/ A (* V l))) (pow (sqrt -1) 2)))))
#s(approx (sqrt A) #s(hole binary64 (* -1 (* (sqrt A) (pow (sqrt -1) 2)))))
#s(approx (* c0 (/ (sqrt (/ A V)) (sqrt l))) #s(hole binary64 (* -1 (* (sqrt (/ A (* V l))) (* c0 (pow (sqrt -1) 2))))))
#s(approx (/ (sqrt (/ A V)) (sqrt l)) #s(hole binary64 (* -1 (* (sqrt (/ A (* V l))) (pow (sqrt -1) 2)))))
#s(approx (sqrt (/ A V)) #s(hole binary64 (* -1 (* (sqrt (/ A V)) (pow (sqrt -1) 2)))))
#s(approx (/ (* c0 (sqrt A)) (sqrt (* l V))) #s(hole binary64 (* -1 (* (sqrt (/ A (* V l))) (* c0 (pow (sqrt -1) 2))))))
#s(approx (* c0 (sqrt A)) #s(hole binary64 (* -1 (* (sqrt A) (* c0 (pow (sqrt -1) 2))))))
#s(approx (* (sqrt l) (sqrt V)) #s(hole binary64 (sqrt (* V l))))
#s(approx (sqrt V) #s(hole binary64 (sqrt V)))
#s(approx V #s(hole binary64 V))
#s(approx (sqrt (* l V)) #s(hole binary64 (sqrt (* V l))))
#s(approx (* l V) #s(hole binary64 (* V l)))
#s(approx (* (sqrt l) (sqrt V)) #s(hole binary64 (* -1 (* (sqrt (* V l)) (pow (sqrt -1) 2)))))
#s(approx (sqrt V) #s(hole binary64 (* -1 (* (sqrt V) (pow (sqrt -1) 2)))))
#s(approx (* c0 (/ (sqrt (/ A V)) (sqrt l))) #s(hole binary64 (* (sqrt (/ A (* V l))) (* c0 (pow (sqrt -1) 2)))))
#s(approx (/ (sqrt (/ A V)) (sqrt l)) #s(hole binary64 (* (sqrt (/ A (* V l))) (pow (sqrt -1) 2))))
#s(approx (sqrt (/ A V)) #s(hole binary64 (* (sqrt (/ A V)) (pow (sqrt -1) 2))))
#s(approx (sqrt (* l V)) #s(hole binary64 (* -1 (* (sqrt (* V l)) (pow (sqrt -1) 2)))))
#s(approx (sqrt l) #s(hole binary64 (sqrt l)))
#s(approx l #s(hole binary64 l))
#s(approx (sqrt l) #s(hole binary64 (* -1 (* (sqrt l) (pow (sqrt -1) 2)))))
Calls

12 calls:

TimeVariablePointExpression
10.0ms
A
@-inf
((* c0 (/ (sqrt A) (* (sqrt l) (sqrt V)))) c0 (/ (sqrt A) (* (sqrt l) (sqrt V))) (sqrt A) A (* (sqrt l) (sqrt V)) (sqrt l) l (sqrt V) V (* c0 (/ (sqrt (/ A V)) (sqrt l))) (/ (sqrt (/ A V)) (sqrt l)) (sqrt (/ A V)) (/ A V) (/ (* c0 (sqrt A)) (sqrt (* l V))) (* c0 (sqrt A)) (sqrt (* l V)) (* l V))
3.0ms
V
@-inf
((* c0 (/ (sqrt A) (* (sqrt l) (sqrt V)))) c0 (/ (sqrt A) (* (sqrt l) (sqrt V))) (sqrt A) A (* (sqrt l) (sqrt V)) (sqrt l) l (sqrt V) V (* c0 (/ (sqrt (/ A V)) (sqrt l))) (/ (sqrt (/ A V)) (sqrt l)) (sqrt (/ A V)) (/ A V) (/ (* c0 (sqrt A)) (sqrt (* l V))) (* c0 (sqrt A)) (sqrt (* l V)) (* l V))
2.0ms
l
@-inf
((* c0 (/ (sqrt A) (* (sqrt l) (sqrt V)))) c0 (/ (sqrt A) (* (sqrt l) (sqrt V))) (sqrt A) A (* (sqrt l) (sqrt V)) (sqrt l) l (sqrt V) V (* c0 (/ (sqrt (/ A V)) (sqrt l))) (/ (sqrt (/ A V)) (sqrt l)) (sqrt (/ A V)) (/ A V) (/ (* c0 (sqrt A)) (sqrt (* l V))) (* c0 (sqrt A)) (sqrt (* l V)) (* l V))
2.0ms
A
@inf
((* c0 (/ (sqrt A) (* (sqrt l) (sqrt V)))) c0 (/ (sqrt A) (* (sqrt l) (sqrt V))) (sqrt A) A (* (sqrt l) (sqrt V)) (sqrt l) l (sqrt V) V (* c0 (/ (sqrt (/ A V)) (sqrt l))) (/ (sqrt (/ A V)) (sqrt l)) (sqrt (/ A V)) (/ A V) (/ (* c0 (sqrt A)) (sqrt (* l V))) (* c0 (sqrt A)) (sqrt (* l V)) (* l V))
1.0ms
c0
@-inf
((* c0 (/ (sqrt A) (* (sqrt l) (sqrt V)))) c0 (/ (sqrt A) (* (sqrt l) (sqrt V))) (sqrt A) A (* (sqrt l) (sqrt V)) (sqrt l) l (sqrt V) V (* c0 (/ (sqrt (/ A V)) (sqrt l))) (/ (sqrt (/ A V)) (sqrt l)) (sqrt (/ A V)) (/ A V) (/ (* c0 (sqrt A)) (sqrt (* l V))) (* c0 (sqrt A)) (sqrt (* l V)) (* l V))

rewrite28.0ms (0.9%)

Memory
-10.5MiB live, 34.3MiB allocated; 5ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
092514
0114431
0233431
Stop Event
iter limit
iter limit
iter limit
unsound
iter limit
Counts
51 → 89
Calls
Call 1
Inputs
(*.f64 c0 (/.f64 (sqrt.f64 A) (*.f64 (sqrt.f64 l) (sqrt.f64 V))))
c0
(/.f64 (sqrt.f64 A) (*.f64 (sqrt.f64 l) (sqrt.f64 V)))
(sqrt.f64 A)
A
(*.f64 (sqrt.f64 l) (sqrt.f64 V))
(sqrt.f64 l)
l
(sqrt.f64 V)
V
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)))
(/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))
(sqrt.f64 (/.f64 A V))
(/.f64 A V)
(/.f64 (*.f64 c0 (sqrt.f64 A)) (sqrt.f64 (*.f64 l V)))
(*.f64 c0 (sqrt.f64 A))
(sqrt.f64 (*.f64 l V))
(*.f64 l V)
#s(approx (* c0 (/ (sqrt A) (* (sqrt l) (sqrt V)))) #s(hole binary64 (* (sqrt (/ A (* V l))) c0)))
#s(approx c0 #s(hole binary64 c0))
#s(approx (* c0 (/ (sqrt (/ A V)) (sqrt l))) #s(hole binary64 (* (sqrt (/ A (* V l))) c0)))
#s(approx (/ (* c0 (sqrt A)) (sqrt (* l V))) #s(hole binary64 (* (sqrt (/ A (* V l))) c0)))
#s(approx (* c0 (sqrt A)) #s(hole binary64 (* (sqrt A) c0)))
#s(approx (/ (sqrt A) (* (sqrt l) (sqrt V))) #s(hole binary64 (sqrt (/ A (* V l)))))
#s(approx (sqrt A) #s(hole binary64 (sqrt A)))
#s(approx A #s(hole binary64 A))
#s(approx (/ (sqrt (/ A V)) (sqrt l)) #s(hole binary64 (sqrt (/ A (* V l)))))
#s(approx (sqrt (/ A V)) #s(hole binary64 (sqrt (/ A V))))
#s(approx (/ A V) #s(hole binary64 (/ A V)))
#s(approx (* c0 (/ (sqrt A) (* (sqrt l) (sqrt V)))) #s(hole binary64 (* -1 (* (sqrt (/ A (* V l))) (* c0 (pow (sqrt -1) 2))))))
#s(approx (/ (sqrt A) (* (sqrt l) (sqrt V))) #s(hole binary64 (* -1 (* (sqrt (/ A (* V l))) (pow (sqrt -1) 2)))))
#s(approx (sqrt A) #s(hole binary64 (* -1 (* (sqrt A) (pow (sqrt -1) 2)))))
#s(approx (* c0 (/ (sqrt (/ A V)) (sqrt l))) #s(hole binary64 (* -1 (* (sqrt (/ A (* V l))) (* c0 (pow (sqrt -1) 2))))))
#s(approx (/ (sqrt (/ A V)) (sqrt l)) #s(hole binary64 (* -1 (* (sqrt (/ A (* V l))) (pow (sqrt -1) 2)))))
#s(approx (sqrt (/ A V)) #s(hole binary64 (* -1 (* (sqrt (/ A V)) (pow (sqrt -1) 2)))))
#s(approx (/ (* c0 (sqrt A)) (sqrt (* l V))) #s(hole binary64 (* -1 (* (sqrt (/ A (* V l))) (* c0 (pow (sqrt -1) 2))))))
#s(approx (* c0 (sqrt A)) #s(hole binary64 (* -1 (* (sqrt A) (* c0 (pow (sqrt -1) 2))))))
#s(approx (* (sqrt l) (sqrt V)) #s(hole binary64 (sqrt (* V l))))
#s(approx (sqrt V) #s(hole binary64 (sqrt V)))
#s(approx V #s(hole binary64 V))
#s(approx (sqrt (* l V)) #s(hole binary64 (sqrt (* V l))))
#s(approx (* l V) #s(hole binary64 (* V l)))
#s(approx (* (sqrt l) (sqrt V)) #s(hole binary64 (* -1 (* (sqrt (* V l)) (pow (sqrt -1) 2)))))
#s(approx (sqrt V) #s(hole binary64 (* -1 (* (sqrt V) (pow (sqrt -1) 2)))))
#s(approx (* c0 (/ (sqrt (/ A V)) (sqrt l))) #s(hole binary64 (* (sqrt (/ A (* V l))) (* c0 (pow (sqrt -1) 2)))))
#s(approx (/ (sqrt (/ A V)) (sqrt l)) #s(hole binary64 (* (sqrt (/ A (* V l))) (pow (sqrt -1) 2))))
#s(approx (sqrt (/ A V)) #s(hole binary64 (* (sqrt (/ A V)) (pow (sqrt -1) 2))))
#s(approx (sqrt (* l V)) #s(hole binary64 (* -1 (* (sqrt (* V l)) (pow (sqrt -1) 2)))))
#s(approx (sqrt l) #s(hole binary64 (sqrt l)))
#s(approx l #s(hole binary64 l))
#s(approx (sqrt l) #s(hole binary64 (* -1 (* (sqrt l) (pow (sqrt -1) 2)))))
Outputs
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))
(/.f64 (*.f64 c0 (sqrt.f64 (/.f64 A V))) (sqrt.f64 l))
(/.f64 (neg.f64 (*.f64 (sqrt.f64 A) c0)) (neg.f64 (sqrt.f64 (*.f64 V l))))
(/.f64 (*.f64 (sqrt.f64 A) c0) (sqrt.f64 (*.f64 V l)))
c0
(pow.f64 (/.f64 (/.f64 A V) l) #s(literal 1/2 binary64))
(/.f64 (/.f64 (sqrt.f64 A) (sqrt.f64 l)) (sqrt.f64 V))
(/.f64 (neg.f64 (sqrt.f64 A)) (neg.f64 (sqrt.f64 (*.f64 V l))))
(/.f64 (neg.f64 (sqrt.f64 (/.f64 A V))) (neg.f64 (sqrt.f64 l)))
(/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))
(/.f64 (sqrt.f64 A) (sqrt.f64 (*.f64 V l)))
(sqrt.f64 (/.f64 (/.f64 A V) l))
(pow.f64 A #s(literal 1/2 binary64))
(sqrt.f64 A)
A
(*.f64 (sqrt.f64 V) (sqrt.f64 l))
(*.f64 (sqrt.f64 l) (sqrt.f64 V))
(pow.f64 (*.f64 V l) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 V l))
(pow.f64 l #s(literal 1/2 binary64))
(sqrt.f64 l)
l
(pow.f64 V #s(literal 1/2 binary64))
(sqrt.f64 V)
V
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))
(/.f64 (*.f64 c0 (sqrt.f64 (/.f64 A V))) (sqrt.f64 l))
(/.f64 (neg.f64 (*.f64 (sqrt.f64 A) c0)) (neg.f64 (sqrt.f64 (*.f64 V l))))
(/.f64 (*.f64 (sqrt.f64 A) c0) (sqrt.f64 (*.f64 V l)))
(pow.f64 (/.f64 (/.f64 A V) l) #s(literal 1/2 binary64))
(/.f64 (/.f64 (sqrt.f64 A) (sqrt.f64 l)) (sqrt.f64 V))
(/.f64 (neg.f64 (sqrt.f64 A)) (neg.f64 (sqrt.f64 (*.f64 V l))))
(/.f64 (neg.f64 (sqrt.f64 (/.f64 A V))) (neg.f64 (sqrt.f64 l)))
(/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))
(/.f64 (sqrt.f64 A) (sqrt.f64 (*.f64 V l)))
(sqrt.f64 (/.f64 (/.f64 A V) l))
(pow.f64 (/.f64 A V) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 A) (sqrt.f64 V))
(sqrt.f64 (/.f64 A V))
(/.f64 (neg.f64 A) (neg.f64 V))
(/.f64 A V)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))
(/.f64 (*.f64 c0 (sqrt.f64 (/.f64 A V))) (sqrt.f64 l))
(/.f64 (neg.f64 (*.f64 (sqrt.f64 A) c0)) (neg.f64 (sqrt.f64 (*.f64 V l))))
(/.f64 (*.f64 (sqrt.f64 A) c0) (sqrt.f64 (*.f64 V l)))
(*.f64 (sqrt.f64 A) c0)
(*.f64 c0 (sqrt.f64 A))
(*.f64 (sqrt.f64 V) (sqrt.f64 l))
(*.f64 (sqrt.f64 l) (sqrt.f64 V))
(pow.f64 (*.f64 V l) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 V l))
(*.f64 V l)
(*.f64 l V)
#s(approx (* c0 (/ (sqrt A) (* (sqrt l) (sqrt V)))) (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0))
#s(approx c0 c0)
#s(approx (* c0 (/ (sqrt A) (* (sqrt l) (sqrt V)))) (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0))
#s(approx (* c0 (/ (sqrt A) (* (sqrt l) (sqrt V)))) (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0))
#s(approx (* c0 (sqrt A)) (*.f64 (sqrt.f64 A) c0))
#s(approx (/ (sqrt A) (* (sqrt l) (sqrt V))) (sqrt.f64 (/.f64 (/.f64 A V) l)))
#s(approx (sqrt A) (sqrt.f64 A))
#s(approx A A)
#s(approx (/ (sqrt A) (* (sqrt l) (sqrt V))) (sqrt.f64 (/.f64 (/.f64 A V) l)))
#s(approx (sqrt (/ A V)) (sqrt.f64 (/.f64 A V)))
#s(approx (/ A V) (/.f64 A V))
#s(approx (* c0 (/ (sqrt A) (* (sqrt l) (sqrt V)))) (neg.f64 (*.f64 (*.f64 #s(literal -1 binary64) c0) (sqrt.f64 (/.f64 (/.f64 A V) l)))))
#s(approx (/ (sqrt A) (* (sqrt l) (sqrt V))) (neg.f64 (*.f64 #s(literal -1 binary64) (sqrt.f64 (/.f64 (/.f64 A V) l)))))
#s(approx (sqrt A) (neg.f64 (*.f64 #s(literal -1 binary64) (sqrt.f64 A))))
#s(approx (* c0 (/ (sqrt A) (* (sqrt l) (sqrt V)))) (neg.f64 (*.f64 (*.f64 #s(literal -1 binary64) c0) (sqrt.f64 (/.f64 (/.f64 A V) l)))))
#s(approx (/ (sqrt A) (* (sqrt l) (sqrt V))) (neg.f64 (*.f64 #s(literal -1 binary64) (sqrt.f64 (/.f64 (/.f64 A V) l)))))
#s(approx (sqrt (/ A V)) (neg.f64 (*.f64 #s(literal -1 binary64) (sqrt.f64 (/.f64 A V)))))
#s(approx (* c0 (/ (sqrt A) (* (sqrt l) (sqrt V)))) (neg.f64 (*.f64 (*.f64 #s(literal -1 binary64) c0) (sqrt.f64 (/.f64 (/.f64 A V) l)))))
#s(approx (* c0 (sqrt A)) (neg.f64 (*.f64 (*.f64 (sqrt.f64 A) c0) #s(literal -1 binary64))))
#s(approx (* (sqrt l) (sqrt V)) (sqrt.f64 (*.f64 V l)))
#s(approx (sqrt V) (sqrt.f64 V))
#s(approx V V)
#s(approx (* (sqrt l) (sqrt V)) (sqrt.f64 (*.f64 V l)))
#s(approx (* l V) (*.f64 V l))
#s(approx (* (sqrt l) (sqrt V)) (neg.f64 (*.f64 #s(literal -1 binary64) (sqrt.f64 (*.f64 V l)))))
#s(approx (sqrt V) (neg.f64 (*.f64 #s(literal -1 binary64) (sqrt.f64 V))))
#s(approx (* c0 (/ (sqrt A) (* (sqrt l) (sqrt V)))) (*.f64 (*.f64 #s(literal -1 binary64) c0) (sqrt.f64 (/.f64 (/.f64 A V) l))))
#s(approx (/ (sqrt A) (* (sqrt l) (sqrt V))) (*.f64 #s(literal -1 binary64) (sqrt.f64 (/.f64 (/.f64 A V) l))))
#s(approx (sqrt (/ A V)) (*.f64 #s(literal -1 binary64) (sqrt.f64 (/.f64 A V))))
#s(approx (* (sqrt l) (sqrt V)) (neg.f64 (*.f64 #s(literal -1 binary64) (sqrt.f64 (*.f64 V l)))))
#s(approx (sqrt l) (sqrt.f64 l))
#s(approx l l)
#s(approx (sqrt l) (neg.f64 (*.f64 #s(literal -1 binary64) (sqrt.f64 l))))

eval6.0ms (0.2%)

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

Compiled 981 to 211 computations (78.5% saved)

prune4.0ms (0.1%)

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

7 alts after pruning (1 fresh and 6 done)

PrunedKeptTotal
New83184
Fresh000
Picked033
Done033
Total83790
Accuracy
93.7%
Counts
90 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
60.3%
(/.f64 (*.f64 c0 (sqrt.f64 (/.f64 A V))) (sqrt.f64 l))
43.0%
(/.f64 (*.f64 c0 (sqrt.f64 A)) (sqrt.f64 (*.f64 l V)))
64.6%
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)))
26.1%
(*.f64 c0 (/.f64 (sqrt.f64 A) (*.f64 (sqrt.f64 l) (sqrt.f64 V))))
43.7%
(*.f64 c0 (/.f64 (sqrt.f64 A) (sqrt.f64 (*.f64 l V))))
78.2%
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))
80.5%
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
Compiler

Compiled 62 to 62 computations (0% saved)

series18.0ms (0.5%)

Memory
-15.1MiB live, 30.5MiB allocated; 4ms collecting garbage
Counts
9 → 16
Calls
Call 1
Inputs
(/.f64 (*.f64 c0 (sqrt.f64 (/.f64 A V))) (sqrt.f64 l))
(*.f64 c0 (sqrt.f64 (/.f64 A V)))
c0
(sqrt.f64 (/.f64 A V))
(/.f64 A V)
A
V
(sqrt.f64 l)
l
Outputs
#s(approx (/ (* c0 (sqrt (/ A V))) (sqrt l)) #s(hole binary64 (* (sqrt (/ A (* V l))) c0)))
#s(approx (* c0 (sqrt (/ A V))) #s(hole binary64 (* (sqrt (/ A V)) c0)))
#s(approx c0 #s(hole binary64 c0))
#s(approx (sqrt (/ A V)) #s(hole binary64 (sqrt (/ A V))))
#s(approx (/ A V) #s(hole binary64 (/ A V)))
#s(approx A #s(hole binary64 A))
#s(approx (/ (* c0 (sqrt (/ A V))) (sqrt l)) #s(hole binary64 (* -1 (* (sqrt (/ A (* V l))) (* c0 (pow (sqrt -1) 2))))))
#s(approx (* c0 (sqrt (/ A V))) #s(hole binary64 (* -1 (* (sqrt (/ A V)) (* c0 (pow (sqrt -1) 2))))))
#s(approx (sqrt (/ A V)) #s(hole binary64 (* -1 (* (sqrt (/ A V)) (pow (sqrt -1) 2)))))
#s(approx V #s(hole binary64 V))
#s(approx (/ (* c0 (sqrt (/ A V))) (sqrt l)) #s(hole binary64 (* (sqrt (/ A (* V l))) (* c0 (pow (sqrt -1) 2)))))
#s(approx (* c0 (sqrt (/ A V))) #s(hole binary64 (* (sqrt (/ A V)) (* c0 (pow (sqrt -1) 2)))))
#s(approx (sqrt (/ A V)) #s(hole binary64 (* (sqrt (/ A V)) (pow (sqrt -1) 2))))
#s(approx (sqrt l) #s(hole binary64 (sqrt l)))
#s(approx l #s(hole binary64 l))
#s(approx (sqrt l) #s(hole binary64 (* -1 (* (sqrt l) (pow (sqrt -1) 2)))))
Calls

12 calls:

TimeVariablePointExpression
4.0ms
V
@0
((/ (* c0 (sqrt (/ A V))) (sqrt l)) (* c0 (sqrt (/ A V))) c0 (sqrt (/ A V)) (/ A V) A V (sqrt l) l)
2.0ms
A
@-inf
((/ (* c0 (sqrt (/ A V))) (sqrt l)) (* c0 (sqrt (/ A V))) c0 (sqrt (/ A V)) (/ A V) A V (sqrt l) l)
2.0ms
c0
@-inf
((/ (* c0 (sqrt (/ A V))) (sqrt l)) (* c0 (sqrt (/ A V))) c0 (sqrt (/ A V)) (/ A V) A V (sqrt l) l)
2.0ms
V
@-inf
((/ (* c0 (sqrt (/ A V))) (sqrt l)) (* c0 (sqrt (/ A V))) c0 (sqrt (/ A V)) (/ A V) A V (sqrt l) l)
1.0ms
A
@inf
((/ (* c0 (sqrt (/ A V))) (sqrt l)) (* c0 (sqrt (/ A V))) c0 (sqrt (/ A V)) (/ A V) A V (sqrt l) l)

rewrite19.0ms (0.6%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
048220
055195
0120195
Stop Event
iter limit
iter limit
iter limit
unsound
iter limit
Counts
25 → 32
Calls
Call 1
Inputs
(/.f64 (*.f64 c0 (sqrt.f64 (/.f64 A V))) (sqrt.f64 l))
(*.f64 c0 (sqrt.f64 (/.f64 A V)))
c0
(sqrt.f64 (/.f64 A V))
(/.f64 A V)
A
V
(sqrt.f64 l)
l
#s(approx (/ (* c0 (sqrt (/ A V))) (sqrt l)) #s(hole binary64 (* (sqrt (/ A (* V l))) c0)))
#s(approx (* c0 (sqrt (/ A V))) #s(hole binary64 (* (sqrt (/ A V)) c0)))
#s(approx c0 #s(hole binary64 c0))
#s(approx (sqrt (/ A V)) #s(hole binary64 (sqrt (/ A V))))
#s(approx (/ A V) #s(hole binary64 (/ A V)))
#s(approx A #s(hole binary64 A))
#s(approx (/ (* c0 (sqrt (/ A V))) (sqrt l)) #s(hole binary64 (* -1 (* (sqrt (/ A (* V l))) (* c0 (pow (sqrt -1) 2))))))
#s(approx (* c0 (sqrt (/ A V))) #s(hole binary64 (* -1 (* (sqrt (/ A V)) (* c0 (pow (sqrt -1) 2))))))
#s(approx (sqrt (/ A V)) #s(hole binary64 (* -1 (* (sqrt (/ A V)) (pow (sqrt -1) 2)))))
#s(approx V #s(hole binary64 V))
#s(approx (/ (* c0 (sqrt (/ A V))) (sqrt l)) #s(hole binary64 (* (sqrt (/ A (* V l))) (* c0 (pow (sqrt -1) 2)))))
#s(approx (* c0 (sqrt (/ A V))) #s(hole binary64 (* (sqrt (/ A V)) (* c0 (pow (sqrt -1) 2)))))
#s(approx (sqrt (/ A V)) #s(hole binary64 (* (sqrt (/ A V)) (pow (sqrt -1) 2))))
#s(approx (sqrt l) #s(hole binary64 (sqrt l)))
#s(approx l #s(hole binary64 l))
#s(approx (sqrt l) #s(hole binary64 (* -1 (* (sqrt l) (pow (sqrt -1) 2)))))
Outputs
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)))
(/.f64 (neg.f64 (*.f64 (sqrt.f64 (/.f64 A V)) c0)) (neg.f64 (sqrt.f64 l)))
(/.f64 (*.f64 (sqrt.f64 (/.f64 A V)) c0) (sqrt.f64 l))
(*.f64 (sqrt.f64 (/.f64 A V)) c0)
(*.f64 c0 (sqrt.f64 (/.f64 A V)))
c0
(pow.f64 (/.f64 A V) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 A) (sqrt.f64 V))
(sqrt.f64 (/.f64 A V))
(/.f64 (neg.f64 A) (neg.f64 V))
(/.f64 A V)
A
V
(pow.f64 l #s(literal 1/2 binary64))
(sqrt.f64 l)
l
#s(approx (/ (* c0 (sqrt (/ A V))) (sqrt l)) (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0))
#s(approx (* c0 (sqrt (/ A V))) (*.f64 (sqrt.f64 (/.f64 A V)) c0))
#s(approx c0 c0)
#s(approx (sqrt (/ A V)) (sqrt.f64 (/.f64 A V)))
#s(approx (/ A V) (/.f64 A V))
#s(approx A A)
#s(approx (/ (* c0 (sqrt (/ A V))) (sqrt l)) (neg.f64 (*.f64 (*.f64 #s(literal -1 binary64) c0) (sqrt.f64 (/.f64 (/.f64 A V) l)))))
#s(approx (* c0 (sqrt (/ A V))) (neg.f64 (*.f64 (*.f64 #s(literal -1 binary64) c0) (sqrt.f64 (/.f64 A V)))))
#s(approx (sqrt (/ A V)) (neg.f64 (*.f64 #s(literal -1 binary64) (sqrt.f64 (/.f64 A V)))))
#s(approx V V)
#s(approx (/ (* c0 (sqrt (/ A V))) (sqrt l)) (*.f64 (*.f64 #s(literal -1 binary64) c0) (sqrt.f64 (/.f64 (/.f64 A V) l))))
#s(approx (* c0 (sqrt (/ A V))) (*.f64 (*.f64 #s(literal -1 binary64) c0) (sqrt.f64 (/.f64 A V))))
#s(approx (sqrt (/ A V)) (*.f64 #s(literal -1 binary64) (sqrt.f64 (/.f64 A V))))
#s(approx (sqrt l) (sqrt.f64 l))
#s(approx l l)
#s(approx (sqrt l) (neg.f64 (*.f64 #s(literal -1 binary64) (sqrt.f64 l))))

eval8.0ms (0.2%)

Memory
-36.9MiB live, 8.0MiB allocated; 6ms collecting garbage
Compiler

Compiled 394 to 93 computations (76.4% saved)

prune3.0ms (0.1%)

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

8 alts after pruning (1 fresh and 7 done)

PrunedKeptTotal
New31132
Fresh000
Picked011
Done066
Total31839
Accuracy
94.5%
Counts
39 → 8
Alt Table
Click to see full alt table
StatusAccuracyProgram
25.4%
(/.f64 (*.f64 c0 (/.f64 (sqrt.f64 A) (sqrt.f64 V))) (sqrt.f64 l))
60.3%
(/.f64 (*.f64 c0 (sqrt.f64 (/.f64 A V))) (sqrt.f64 l))
43.0%
(/.f64 (*.f64 c0 (sqrt.f64 A)) (sqrt.f64 (*.f64 l V)))
64.6%
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)))
26.1%
(*.f64 c0 (/.f64 (sqrt.f64 A) (*.f64 (sqrt.f64 l) (sqrt.f64 V))))
43.7%
(*.f64 c0 (/.f64 (sqrt.f64 A) (sqrt.f64 (*.f64 l V))))
78.2%
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))
80.5%
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
Compiler

Compiled 144 to 104 computations (27.8% saved)

regimes25.0ms (0.8%)

Memory
-2.8MiB live, 47.7MiB allocated; 7ms collecting garbage
Counts
8 → 2
Calls
Call 1
Inputs
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))
(*.f64 c0 (/.f64 (sqrt.f64 A) (sqrt.f64 (*.f64 l V))))
(/.f64 (*.f64 c0 (sqrt.f64 A)) (sqrt.f64 (*.f64 l V)))
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)))
(/.f64 (*.f64 c0 (sqrt.f64 (/.f64 A V))) (sqrt.f64 l))
(*.f64 c0 (/.f64 (sqrt.f64 A) (*.f64 (sqrt.f64 l) (sqrt.f64 V))))
(/.f64 (*.f64 c0 (/.f64 (sqrt.f64 A) (sqrt.f64 V))) (sqrt.f64 l))
Outputs
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(*.f64 c0 (/.f64 (sqrt.f64 A) (*.f64 (sqrt.f64 l) (sqrt.f64 V))))
Calls

8 calls:

7.0ms
(/.f64 A (*.f64 V l))
3.0ms
l
3.0ms
A
3.0ms
V
3.0ms
c0
Results
AccuracySegmentsBranch
86.1%2(*.f64 V l)
83.3%2(/.f64 A (*.f64 V l))
83.3%2(sqrt.f64 (/.f64 A (*.f64 V l)))
80.5%1(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
80.5%1c0
86.2%2A
87.3%2V
86.1%2l
Compiler

Compiled 26 to 42 computations (-61.5% saved)

regimes5.0ms (0.1%)

Memory
11.4MiB live, 11.4MiB allocated; 0ms collecting garbage
Counts
6 → 2
Calls
Call 1
Inputs
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))
(*.f64 c0 (/.f64 (sqrt.f64 A) (sqrt.f64 (*.f64 l V))))
(/.f64 (*.f64 c0 (sqrt.f64 A)) (sqrt.f64 (*.f64 l V)))
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)))
(/.f64 (*.f64 c0 (sqrt.f64 (/.f64 A V))) (sqrt.f64 l))
Outputs
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)))
(*.f64 c0 (/.f64 (sqrt.f64 A) (sqrt.f64 (*.f64 l V))))
Calls

2 calls:

2.0ms
A
2.0ms
V
Results
AccuracySegmentsBranch
86.2%2A
84.0%2V
Compiler

Compiled 2 to 8 computations (-300% saved)

regimes5.0ms (0.2%)

Memory
11.7MiB live, 11.7MiB allocated; 0ms collecting garbage
Counts
4 → 2
Calls
Call 1
Inputs
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))
(*.f64 c0 (/.f64 (sqrt.f64 A) (sqrt.f64 (*.f64 l V))))
(/.f64 (*.f64 c0 (sqrt.f64 A)) (sqrt.f64 (*.f64 l V)))
Outputs
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(*.f64 c0 (/.f64 (sqrt.f64 A) (sqrt.f64 (*.f64 l V))))
Calls

3 calls:

2.0ms
l
2.0ms
A
2.0ms
(*.f64 V l)
Results
AccuracySegmentsBranch
82.3%2l
85.2%2(*.f64 V l)
85.2%2A
Compiler

Compiled 5 to 13 computations (-160% saved)

regimes11.0ms (0.4%)

Memory
-22.3MiB live, 23.7MiB allocated; 4ms collecting garbage
Accuracy

Total -3.4b remaining (-27.5%)

Threshold costs -3.4b (-27.5%)

Counts
2 → 1
Calls
Call 1
Inputs
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))
Outputs
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
Calls

7 calls:

4.0ms
(/.f64 A (*.f64 V l))
1.0ms
l
1.0ms
V
1.0ms
c0
1.0ms
A
Results
AccuracySegmentsBranch
80.5%1c0
80.5%1l
80.5%1(/.f64 A (*.f64 V l))
80.5%1(sqrt.f64 (/.f64 A (*.f64 V l)))
80.5%1V
80.5%1A
80.5%1(*.f64 V l)
Compiler

Compiled 18 to 34 computations (-88.9% saved)

bsearch31.0ms (1%)

Memory
2.0MiB live, 47.5MiB allocated; 5ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
28.0ms
-5.392304664731149e-308
1.2762625287329558e-307
Samples
11.0ms194×0invalid
9.0ms112×0valid
Compiler

Compiled 137 to 155 computations (-13.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 8.0ms
ival-mult: 4.0ms (49.5% of total)
ival-div: 2.0ms (24.7% of total)
ival-sqrt: 2.0ms (24.7% of total)
ival-true: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch28.0ms (0.9%)

Memory
-3.9MiB live, 41.2MiB allocated; 7ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
21.0ms
1.49593189001186e-304
2.977746692215624e-299
Samples
8.0ms144×0valid
6.0ms110×0invalid
Compiler

Compiled 173 to 195 computations (-12.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 7.0ms
ival-mult: 3.0ms (44.4% of total)
ival-div: 2.0ms (29.6% of total)
ival-sqrt: 2.0ms (29.6% of total)
ival-true: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch0.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
3.175217221e-314
3.01801265051236e-310
Compiler

Compiled 11 to 15 computations (-36.4% saved)

simplify9.0ms (0.3%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
03175
Stop Event
saturated
Calls
Call 1
Inputs
(if (<=.f64 V #s(literal -20240225330731/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784 binary64)) (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) (*.f64 c0 (/.f64 (sqrt.f64 A) (*.f64 (sqrt.f64 l) (sqrt.f64 V)))))
(if (<=.f64 A #s(literal 3706095946789135/24707306311927565716857342128774085333197833223161879682238935306082805123046306993647507776054336486228891340858985829027076261887914242781617846672453431386903982455635542158748401823985988322905245077938567513252198179128990807936780194781391547404884040101606295111368825026273254703636026307207764436438929167613952 binary64)) (*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))) (*.f64 c0 (/.f64 (sqrt.f64 A) (sqrt.f64 (*.f64 l V)))))
(if (<=.f64 (*.f64 V l) #s(literal 10120112665/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784 binary64)) (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) (*.f64 c0 (/.f64 (sqrt.f64 A) (sqrt.f64 (*.f64 l V)))))
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
Outputs
(if (<=.f64 V #s(literal -20240225330731/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784 binary64)) (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) (*.f64 c0 (/.f64 (sqrt.f64 A) (*.f64 (sqrt.f64 l) (sqrt.f64 V)))))
(if (<=.f64 A #s(literal 3706095946789135/24707306311927565716857342128774085333197833223161879682238935306082805123046306993647507776054336486228891340858985829027076261887914242781617846672453431386903982455635542158748401823985988322905245077938567513252198179128990807936780194781391547404884040101606295111368825026273254703636026307207764436438929167613952 binary64)) (*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))) (*.f64 c0 (/.f64 (sqrt.f64 A) (sqrt.f64 (*.f64 l V)))))
(if (<=.f64 (*.f64 V l) #s(literal 10120112665/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784 binary64)) (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) (*.f64 c0 (/.f64 (sqrt.f64 A) (sqrt.f64 (*.f64 l V)))))
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))

derivations3.0ms (0.1%)

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

Compiled 75 to 31 computations (58.7% saved)

preprocess50.0ms (1.6%)

Memory
-10.2MiB live, 86.4MiB allocated; 14ms collecting garbage
Remove

(negabs c0)

Compiler

Compiled 430 to 282 computations (34.4% saved)

end0.0ms (0%)

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

Profiling

Loading profile data...