
Time bar (total: 2.6s)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 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 |
Compiled 10 to 10 computations (0% saved)
| 541.0ms | 6 689× | 0 | invalid |
| 533.0ms | 8 256× | 0 | valid |
ival-mult!: 266.0ms (53.9% of total)ival-sqrt: 131.0ms (26.5% of total)ival-div!: 95.0ms (19.2% of total)adjust: 3.0ms (0.6% of total)| Ground Truth | Overpredictions | Example | Underpredictions | Example | Subexpression |
|---|---|---|---|---|---|
| 64 | 0 | - | 0 | - | (sqrt.f64 (/.f64 A (*.f64 V l))) |
| 25 | 0 | - | 2 | (-3.6533891341159616e-218 -9.918973282951828e-33 -6.068831059948775e-189 3.2122809308799968e-127) | (/.f64 A (*.f64 V l)) |
| 4 | 0 | - | 0 | - | (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) |
| 0 | 0 | - | 0 | - | A |
| 0 | 0 | - | 0 | - | (*.f64 V l) |
| 0 | 0 | - | 0 | - | V |
| 0 | 0 | - | 0 | - | l |
| 0 | 0 | - | 0 | - | c0 |
| Operator | Subexpression | Explanation | Count | |
|---|---|---|---|---|
sqrt.f64 | (sqrt.f64 (/.f64 A (*.f64 V l))) | uflow-rescue | 36 | 0 |
| ↳ | (sqrt.f64 (/.f64 A (*.f64 V l))) | underflow | 3 | |
| ↳ | (/.f64 A (*.f64 V l)) | underflow | 39 | |
| ↳ | (*.f64 V l) | underflow | 32 | |
sqrt.f64 | (sqrt.f64 (/.f64 A (*.f64 V l))) | oflow-rescue | 28 | 0 |
| ↳ | (sqrt.f64 (/.f64 A (*.f64 V l))) | overflow | 8 | |
| ↳ | (/.f64 A (*.f64 V l)) | overflow | 36 | |
| ↳ | (*.f64 V l) | overflow | 31 | |
/.f64 | (/.f64 A (*.f64 V l)) | n/u | 12 | 0 |
| ↳ | (*.f64 V l) | underflow | 32 | |
/.f64 | (/.f64 A (*.f64 V l)) | n/o | 11 | 0 |
| ↳ | (*.f64 V l) | overflow | 31 | |
*.f64 | (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) | n*o | 3 | 0 |
*.f64 | (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) | n*u | 1 | 0 |
| Predicted + | Predicted - | |
|---|---|---|
| + | 63 | 2 |
| - | 28 | 163 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 63 | 0 | 2 |
| - | 28 | 0 | 163 |
| number | freq |
|---|---|
| 0 | 165 |
| 1 | 91 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 1 | 0 | 0 |
| - | 0 | 0 | 0 |
| 27.0ms | 512× | 0 | valid |
Compiled 64 to 28 computations (56.3% saved)
ival-mult!: 5.0ms (44% of total)ival-sqrt: 4.0ms (35.2% of total)ival-div!: 3.0ms (26.4% of total)adjust: 0.0ms (0% of total)Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 51 | 130 |
| 1 | 102 | 130 |
| 2 | 126 | 130 |
| 3 | 164 | 130 |
| 4 | 212 | 130 |
| 5 | 271 | 130 |
| 6 | 337 | 130 |
| 7 | 400 | 130 |
| 8 | 472 | 130 |
| 9 | 487 | 130 |
| 10 | 502 | 130 |
| 1× | saturated |
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 75.9% | (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) |
(negabs c0)
(sort V l)
Compiled 16 to 16 computations (0% saved)
| 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)) |
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 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) |
| 2.0ms | l | @ | -inf | ((* c0 (sqrt (/ A (* V l)))) c0 (sqrt (/ A (* V l))) (/ A (* V l)) A (* V l) V l) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 34 | 170 |
| 0 | 39 | 156 |
| 0 | 79 | 156 |
| 1× | iter-limit |
| 1× | iter-limit |
| 1× | iter-limit |
| 1× | unsound |
| 1× | iter-limit |
| 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) |
Compiled 248 to 70 computations (71.8% saved)
3 alts after pruning (2 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 19 | 2 | 21 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 19 | 3 | 22 |
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 46.3% | (*.f64 c0 (/.f64 (sqrt.f64 A) (sqrt.f64 (*.f64 l V)))) |
| ▶ | 76.5% | (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l))) |
| ✓ | 75.9% | (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) |
Compiled 25 to 25 computations (0% saved)
| 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)) |
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 7.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)) |
| 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)) |
| 2.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)) |
| 1.0ms | V | @ | 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)) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 61 | 322 |
| 0 | 74 | 286 |
| 0 | 159 | 286 |
| 1× | iter-limit |
| 1× | iter-limit |
| 1× | iter-limit |
| 1× | unsound |
| 1× | iter-limit |
| 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) |
Compiled 423 to 138 computations (67.4% saved)
5 alts after pruning (3 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 32 | 3 | 35 |
| Fresh | 0 | 0 | 0 |
| Picked | 1 | 1 | 2 |
| Done | 0 | 1 | 1 |
| Total | 33 | 5 | 38 |
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 44.5% | (/.f64 (*.f64 c0 (sqrt.f64 A)) (sqrt.f64 (*.f64 l V))) |
| ▶ | 63.4% | (*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))) |
| ▶ | 28.3% | (*.f64 c0 (/.f64 (sqrt.f64 A) (*.f64 (sqrt.f64 l) (sqrt.f64 V)))) |
| ✓ | 76.5% | (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l))) |
| ✓ | 75.9% | (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) |
Compiled 44 to 44 computations (0% saved)
| 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))))) |
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 5.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)) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 92 | 514 |
| 0 | 114 | 431 |
| 0 | 233 | 431 |
| 1× | iter-limit |
| 1× | iter-limit |
| 1× | iter-limit |
| 1× | unsound |
| 1× | iter-limit |
| 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)))) |
Compiled 750 to 207 computations (72.4% saved)
6 alts after pruning (1 fresh and 5 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 58 | 1 | 59 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 3 | 3 |
| Done | 0 | 2 | 2 |
| Total | 58 | 6 | 64 |
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 61.0% | (/.f64 (*.f64 c0 (sqrt.f64 (/.f64 A V))) (sqrt.f64 l)) |
| ✓ | 44.5% | (/.f64 (*.f64 c0 (sqrt.f64 A)) (sqrt.f64 (*.f64 l V))) |
| ✓ | 63.4% | (*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))) |
| ✓ | 28.3% | (*.f64 c0 (/.f64 (sqrt.f64 A) (*.f64 (sqrt.f64 l) (sqrt.f64 V)))) |
| ✓ | 76.5% | (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l))) |
| ✓ | 75.9% | (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) |
Compiled 53 to 53 computations (0% saved)
| 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))))) |
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 4.0ms | l | @ | -inf | ((/ (* 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) |
| 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) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 48 | 220 |
| 0 | 55 | 195 |
| 0 | 120 | 195 |
| 1× | iter-limit |
| 1× | iter-limit |
| 1× | iter-limit |
| 1× | unsound |
| 1× | iter-limit |
| 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)))) |
Compiled 313 to 90 computations (71.2% saved)
7 alts after pruning (1 fresh and 6 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 22 | 1 | 23 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 5 | 5 |
| Total | 22 | 7 | 29 |
| Status | Accuracy | Program |
|---|---|---|
| 27.3% | (/.f64 (*.f64 c0 (/.f64 (sqrt.f64 A) (sqrt.f64 V))) (sqrt.f64 l)) | |
| ✓ | 61.0% | (/.f64 (*.f64 c0 (sqrt.f64 (/.f64 A V))) (sqrt.f64 l)) |
| ✓ | 44.5% | (/.f64 (*.f64 c0 (sqrt.f64 A)) (sqrt.f64 (*.f64 l V))) |
| ✓ | 63.4% | (*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))) |
| ✓ | 28.3% | (*.f64 c0 (/.f64 (sqrt.f64 A) (*.f64 (sqrt.f64 l) (sqrt.f64 V)))) |
| ✓ | 76.5% | (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l))) |
| ✓ | 75.9% | (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) |
Compiled 135 to 95 computations (29.6% saved)
| 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 (/.f64 A V)) (sqrt.f64 l))) |
(*.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)))) |
8 calls:
| 8.0ms | (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) |
| 3.0ms | A |
| 3.0ms | l |
| 3.0ms | V |
| 3.0ms | c0 |
| Accuracy | Segments | Branch |
|---|---|---|
| 89.1% | 4 | (*.f64 V l) |
| 86.2% | 3 | (/.f64 A (*.f64 V l)) |
| 86.2% | 3 | (sqrt.f64 (/.f64 A (*.f64 V l))) |
| 84.5% | 3 | (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) |
| 78.2% | 2 | c0 |
| 84.7% | 2 | A |
| 83.1% | 3 | V |
| 83.9% | 2 | l |
Compiled 26 to 42 computations (-61.5% saved)
| 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 (/.f64 A V) l))) |
(*.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)))) |
5 calls:
| 2.0ms | A |
| 2.0ms | l |
| 2.0ms | (*.f64 V l) |
| 2.0ms | (sqrt.f64 (/.f64 A (*.f64 V l))) |
| 2.0ms | (/.f64 A (*.f64 V l)) |
| Accuracy | Segments | Branch |
|---|---|---|
| 78.3% | 2 | l |
| 79.5% | 2 | A |
| 83.7% | 3 | (/.f64 A (*.f64 V l)) |
| 83.7% | 3 | (sqrt.f64 (/.f64 A (*.f64 V l))) |
| 86.2% | 4 | (*.f64 V l) |
Compiled 16 to 26 computations (-62.5% saved)
| 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))) |
4 calls:
| 1.0ms | (*.f64 V 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)) |
| Accuracy | Segments | Branch |
|---|---|---|
| 83.7% | 3 | (/.f64 A (*.f64 V l)) |
| 83.7% | 3 | (sqrt.f64 (/.f64 A (*.f64 V l))) |
| 83.7% | 3 | (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) |
| 82.6% | 4 | (*.f64 V l) |
Compiled 22 to 26 computations (-18.2% saved)
Total -0.0b remaining (-0%)
Threshold costs -0b (-0%)
| Inputs |
|---|
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) |
| Outputs |
|---|
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) |
8 calls:
| 2.0ms | (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) |
| 1.0ms | V |
| 1.0ms | l |
| 1.0ms | A |
| 1.0ms | c0 |
| Accuracy | Segments | Branch |
|---|---|---|
| 75.9% | 1 | c0 |
| 75.9% | 1 | l |
| 75.9% | 1 | A |
| 75.9% | 1 | (*.f64 V l) |
| 75.9% | 1 | V |
| 75.9% | 1 | (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) |
| 75.9% | 1 | (/.f64 A (*.f64 V l)) |
| 75.9% | 1 | (sqrt.f64 (/.f64 A (*.f64 V l))) |
Compiled 26 to 42 computations (-61.5% saved)
| 3× | left-value |
| Time | Left | Right |
|---|---|---|
| 0.0ms | 1.1e-322 | 4.56165570139e-312 |
| 0.0ms | -3.90609134534884e-200 | -8.178467220126132e-205 |
| 0.0ms | -1.7061383242512841e+199 | -2.7912511440465428e+191 |
Compiled 11 to 15 computations (-36.4% saved)
| 3× | left-value |
| Time | Left | Right |
|---|---|---|
| 0.0ms | 1.1e-322 | 4.56165570139e-312 |
| 0.0ms | -3.90609134534884e-200 | -8.178467220126132e-205 |
| 0.0ms | -7.065076523974997e+276 | -4.5791526412543945e+245 |
Compiled 11 to 15 computations (-36.4% saved)
| 2× | left-value |
| Time | Left | Right |
|---|---|---|
| 0.0ms | 2.9667671065651564e+148 | +inf |
| 0.0ms | 1.626658985520571e-151 | 2.6690617079140915e-147 |
Compiled 11 to 15 computations (-36.4% saved)
| 1× | fuel |
Compiled 153 to 39 computations (74.5% saved)
(sort V l)
(negabs c0)
Compiled 1 038 to 482 computations (53.6% saved)
Loading profile data...