Henrywood and Agarwal, Equation (3)

Time bar (total: 2.4s)

start0.0ms (0%)

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

analyze201.0ms (8.3%)

Memory
7.7MiB live, 288.3MiB allocated; 29ms 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)

sample1.7s (69.9%)

Memory
0.6MiB live, 1 833.5MiB allocated; 942ms collecting garbage
Samples
710.0ms6 708×0invalid
534.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 693.0ms
ival-sqrt: 437.0ms (63.1% of total)
ival-mult!: 164.0ms (23.7% of total)
ival-div!: 89.0ms (12.9% of total)
adjust: 3.0ms (0.4% of total)
Bogosity

explain83.0ms (3.4%)

Memory
26.8MiB live, 118.8MiB allocated; 7ms collecting garbage
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
720-2(-5.230671905738306e-132 -7.026173373722828e+46 3.901981505438429e+180 -2.375456341287652e+183)(sqrt.f64 (/.f64 A (*.f64 V l)))
140-2(5.738340182272069e+50 1.4484163122051645e-15 -4.345849820657696e-27 -1.753980019399914e-288)(/.f64 A (*.f64 V l))
30-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)))uflow-rescue360
(sqrt.f64 (/.f64 A (*.f64 V l)))underflow1
(/.f64 A (*.f64 V l))underflow37
(*.f64 V l)underflow28
sqrt.f64(sqrt.f64 (/.f64 A (*.f64 V l)))oflow-rescue340
(sqrt.f64 (/.f64 A (*.f64 V l)))overflow6
(/.f64 A (*.f64 V l))overflow40
(*.f64 V l)overflow27
/.f64(/.f64 A (*.f64 V l))n/o60
(*.f64 V l)overflow27
/.f64(/.f64 A (*.f64 V l))n/u60
(*.f64 V l)underflow28
*.f64(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))n*o20
*.f64(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))n*u10
Confusion
Predicted +Predicted -
+553
-30168
Precision
0.6470588235294118
Recall
0.9482758620689655
Confusion?
Predicted +Predicted MaybePredicted -
+5503
-300168
Precision?
0.6470588235294118
Recall?
0.9482758620689655
Freqs
test
numberfreq
0171
185
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
45.0ms512×0valid
Compiler

Compiled 64 to 28 computations (56.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 15.0ms
ival-sqrt: 7.0ms (47% of total)
ival-mult!: 5.0ms (33.6% of total)
ival-div!: 3.0ms (20.1% of total)
adjust: 0.0ms (0% of total)

preprocess18.0ms (0.7%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
051130
1102130
2126130
3164130
4212130
5271130
6337130
7400130
8472130
9487130
10502130
Stop Event
saturated
Alt Table
Click to see full alt table
StatusAccuracyProgram
79.1%
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
Symmetry

(negabs c0)

(sort V l)

Compiler

Compiled 16 to 16 computations (0% saved)

series19.0ms (0.8%)

Memory
37.7MiB live, 37.7MiB allocated; 0ms 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
3.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
V
@-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
l
@-inf
((* c0 (sqrt (/ A (* V l)))) c0 (sqrt (/ A (* V l))) (/ A (* V l)) A (* V l) V l)

rewrite36.0ms (1.5%)

Memory
-35.1MiB live, 61.5MiB allocated; 12ms 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)

eval2.0ms (0.1%)

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

Compiled 288 to 71 computations (75.3% saved)

prune4.0ms (0.1%)

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

3 alts after pruning (2 fresh and 1 done)

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

Compiled 25 to 25 computations (0% saved)

series20.0ms (0.8%)

Memory
-4.3MiB live, 42.3MiB 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
5.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
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))
1.0ms
A
@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))

rewrite25.0ms (1%)

Memory
0.2MiB live, 42.2MiB allocated; 4ms 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)

eval4.0ms (0.2%)

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

Compiled 559 to 140 computations (75% saved)

prune3.0ms (0.1%)

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

6 alts after pruning (3 fresh and 3 done)

PrunedKeptTotal
New48351
Fresh000
Picked022
Done011
Total48654
Accuracy
91.5%
Counts
54 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
43.6%
(/.f64 (*.f64 c0 (sqrt.f64 A)) (sqrt.f64 (*.f64 l V)))
63.1%
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)))
23.0%
(*.f64 c0 (/.f64 (sqrt.f64 A) (*.f64 (sqrt.f64 l) (sqrt.f64 V))))
45.2%
(*.f64 c0 (/.f64 (sqrt.f64 A) (sqrt.f64 (*.f64 l V))))
76.5%
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))
79.1%
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
Compiler

Compiled 53 to 53 computations (0% saved)

series32.0ms (1.3%)

Memory
4.4MiB live, 58.1MiB allocated; 11ms 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
9.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))
6.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
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 (1.1%)

Memory
1.3MiB live, 47.0MiB allocated; 6ms 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))))

eval10.0ms (0.4%)

Memory
-31.8MiB live, 14.1MiB allocated; 7ms collecting garbage
Compiler

Compiled 981 to 211 computations (78.5% saved)

prune3.0ms (0.1%)

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

7 alts after pruning (1 fresh and 6 done)

PrunedKeptTotal
New83184
Fresh000
Picked033
Done033
Total83790
Accuracy
91.5%
Counts
90 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
61.6%
(/.f64 (*.f64 c0 (sqrt.f64 (/.f64 A V))) (sqrt.f64 l))
43.6%
(/.f64 (*.f64 c0 (sqrt.f64 A)) (sqrt.f64 (*.f64 l V)))
63.1%
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)))
23.0%
(*.f64 c0 (/.f64 (sqrt.f64 A) (*.f64 (sqrt.f64 l) (sqrt.f64 V))))
45.2%
(*.f64 c0 (/.f64 (sqrt.f64 A) (sqrt.f64 (*.f64 l V))))
76.5%
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))
79.1%
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
Compiler

Compiled 62 to 62 computations (0% saved)

series15.0ms (0.6%)

Memory
26.4MiB live, 26.4MiB allocated; 0ms 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
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)
1.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)
1.0ms
c0
@0
((/ (* c0 (sqrt (/ A V))) (sqrt l)) (* c0 (sqrt (/ A V))) c0 (sqrt (/ A V)) (/ A V) A V (sqrt l) l)

rewrite53.0ms (2.2%)

Memory
-24.2MiB live, 21.7MiB allocated; 4ms 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))))

eval2.0ms (0.1%)

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

Compiled 394 to 93 computations (76.4% saved)

prune3.0ms (0.1%)

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

8 alts after pruning (1 fresh and 7 done)

PrunedKeptTotal
New31132
Fresh000
Picked011
Done066
Total31839
Accuracy
91.9%
Counts
39 → 8
Alt Table
Click to see full alt table
StatusAccuracyProgram
22.9%
(/.f64 (*.f64 c0 (/.f64 (sqrt.f64 A) (sqrt.f64 V))) (sqrt.f64 l))
61.6%
(/.f64 (*.f64 c0 (sqrt.f64 (/.f64 A V))) (sqrt.f64 l))
43.6%
(/.f64 (*.f64 c0 (sqrt.f64 A)) (sqrt.f64 (*.f64 l V)))
63.1%
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)))
23.0%
(*.f64 c0 (/.f64 (sqrt.f64 A) (*.f64 (sqrt.f64 l) (sqrt.f64 V))))
45.2%
(*.f64 c0 (/.f64 (sqrt.f64 A) (sqrt.f64 (*.f64 l V))))
76.5%
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))
79.1%
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
Compiler

Compiled 144 to 104 computations (27.8% saved)

regimes38.0ms (1.6%)

Memory
-1.7MiB live, 51.0MiB allocated; 11ms 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 (/.f64 (sqrt.f64 A) (sqrt.f64 (*.f64 l V))))
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)))
Calls

8 calls:

18.0ms
c0
4.0ms
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
3.0ms
A
3.0ms
l
3.0ms
V
Results
AccuracySegmentsBranch
87.5%2(*.f64 V l)
84.6%3(/.f64 A (*.f64 V l))
84.6%3(sqrt.f64 (/.f64 A (*.f64 V l)))
82.7%3(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
79.1%1c0
86.9%2A
83.5%2V
88.7%2l
Compiler

Compiled 26 to 42 computations (-61.5% saved)

regimes14.0ms (0.6%)

Memory
-17.3MiB live, 27.7MiB allocated; 6ms collecting garbage
Counts
4 → 3
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 (sqrt.f64 (/.f64 (/.f64 A V) l)))
(*.f64 c0 (/.f64 (sqrt.f64 A) (sqrt.f64 (*.f64 l V))))
Calls

6 calls:

5.0ms
V
2.0ms
(*.f64 V l)
2.0ms
l
2.0ms
A
2.0ms
(sqrt.f64 (/.f64 A (*.f64 V l)))
Results
AccuracySegmentsBranch
82.6%3(/.f64 A (*.f64 V l))
82.6%3(sqrt.f64 (/.f64 A (*.f64 V l)))
79.1%1V
82.4%2A
84.5%3(*.f64 V l)
81.6%2l
Compiler

Compiled 17 to 30 computations (-76.5% saved)

regimes5.0ms (0.2%)

Memory
13.6MiB live, 13.6MiB allocated; 0ms collecting garbage
Counts
2 → 3
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 (/.f64 A V) l)))
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))
Calls

4 calls:

1.0ms
A
1.0ms
l
1.0ms
(*.f64 V l)
1.0ms
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
Results
AccuracySegmentsBranch
82.6%3(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
79.1%1l
79.1%1A
79.1%1(*.f64 V l)
Compiler

Compiled 13 to 21 computations (-61.5% saved)

regimes4.0ms (0.2%)

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

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

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

4 calls:

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

Compiled 20 to 25 computations (-25% saved)

bsearch31.0ms (1.3%)

Memory
13.7MiB live, 59.0MiB allocated; 5ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
28.0ms
-6.922564346117321e-305
6.309182167482442e-306
Samples
10.0ms144×0valid
9.0ms181×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 (41.4% of total)
ival-sqrt: 2.0ms (27.6% of total)
ival-div!: 2.0ms (27.6% of total)
adjust: 0.0ms (0% of total)

bsearch1.0ms (0%)

Memory
1.3MiB live, 1.3MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
9.08764670722839e-176
5.81000570031909e-175
0.0ms
-2.9835410955041767e-197
-1.2972472984362493e-199
Compiler

Compiled 11 to 15 computations (-36.4% saved)

bsearch0.0ms (0%)

Memory
1.2MiB live, 1.2MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
4.174185432282319e+246
7.827337672209398e+268
0.0ms
5.920911265308594e-268
8.231511165648867e-261
Compiler

Compiled 11 to 15 computations (-36.4% saved)

derivations8.0ms (0.3%)

Memory
-35.4MiB live, 8.5MiB allocated; 12ms collecting garbage
Stop Event
fuel
Compiler

Compiled 113 to 36 computations (68.1% saved)

preprocess70.0ms (2.9%)

Memory
23.3MiB live, 131.6MiB allocated; 38ms collecting garbage
Remove

(sort V l)

(negabs c0)

Compiler

Compiled 738 to 386 computations (47.7% saved)

end0.0ms (0%)

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

Profiling

Loading profile data...