Hyperbolic arc-cosine

Time bar (total: 1.9s)

analyze88.0ms (4.7%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%100%0%0%0%0%0
0%0%100%0%0%0%0%1
0%0%100%0%0%0%0%2
0%0%100%0%0%0%0%3
16.7%12.5%62.5%0%0%25%0%4
30%18.7%43.7%0%0%37.5%0%5
38.9%21.9%34.4%0%0%43.7%0%6
44.1%23.4%29.7%0%0%46.9%0%7
47%24.2%27.3%0%0%48.4%0%8
48.5%24.6%26.2%0%0%49.2%0%9
49.2%24.8%25.6%0%0%49.6%0%10
49.6%24.9%25.3%0%0%49.8%0%11
49.8%24.9%25.1%0%0%49.9%0%12
Compiler

Compiled 11 to 8 computations (27.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 45.0ms
ival-log: 13.0ms (29% of total)
ival-sqrt: 11.0ms (24.5% of total)
ival-mult: 9.0ms (20.1% of total)
ival-sub: 6.0ms (13.4% of total)
ival-add: 5.0ms (11.2% of total)
const: 1.0ms (2.2% of total)

sample1.4s (75.3%)

Results
577.0ms8256×256valid
486.0ms8411×256invalid
Precisions
Click to see histograms. Total time spent on operations: 694.0ms
ival-log: 189.0ms (27.3% of total)
ival-mult: 146.0ms (21.1% of total)
ival-sqrt: 137.0ms (19.8% of total)
ival-sub: 113.0ms (16.3% of total)
ival-add: 88.0ms (12.7% of total)
const: 21.0ms (3% of total)
Bogosity

preprocess259.0ms (13.7%)

Algorithm
egg-herbie
Rules
653×distribute-lft-out
621×distribute-rgt-out--
518×unsub-neg
473×sub-neg
450×distribute-rgt-out
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
019140
148132
283132
3179132
4416132
5923132
61685132
73206132
84236132
94890132
105182132
115490132
125640132
135713132
145924132
156691132
166872132
Stop Event
node limit
Calls
Call 1
Inputs
(log.f64 (+.f64 x (sqrt.f64 (-.f64 (*.f64 x x) #s(literal 1 binary64)))))
(log.f64 (+.f64 x (sqrt.f64 (-.f64 (*.f64 x x) #s(literal 1 binary64)))))
(log.f64 (+.f64 (neg.f64 x) (sqrt.f64 (-.f64 (*.f64 (neg.f64 x) (neg.f64 x)) #s(literal 1 binary64)))))
(neg.f64 (log.f64 (+.f64 (neg.f64 x) (sqrt.f64 (-.f64 (*.f64 (neg.f64 x) (neg.f64 x)) #s(literal 1 binary64))))))
Outputs
(log.f64 (+.f64 x (sqrt.f64 (-.f64 (*.f64 x x) #s(literal 1 binary64)))))
(log.f64 (+.f64 x (sqrt.f64 (fma.f64 x x #s(literal -1 binary64)))))
(log.f64 (+.f64 x (sqrt.f64 (-.f64 (*.f64 x x) #s(literal 1 binary64)))))
(log.f64 (+.f64 x (sqrt.f64 (fma.f64 x x #s(literal -1 binary64)))))
(log.f64 (+.f64 (neg.f64 x) (sqrt.f64 (-.f64 (*.f64 (neg.f64 x) (neg.f64 x)) #s(literal 1 binary64)))))
(log.f64 (+.f64 (neg.f64 x) (sqrt.f64 (fma.f64 x x #s(literal -1 binary64)))))
(log.f64 (-.f64 (sqrt.f64 (fma.f64 x x #s(literal -1 binary64))) x))
(neg.f64 (log.f64 (+.f64 (neg.f64 x) (sqrt.f64 (-.f64 (*.f64 (neg.f64 x) (neg.f64 x)) #s(literal 1 binary64))))))
(neg.f64 (log.f64 (+.f64 (neg.f64 x) (sqrt.f64 (fma.f64 x x #s(literal -1 binary64))))))
(neg.f64 (log.f64 (-.f64 (sqrt.f64 (fma.f64 x x #s(literal -1 binary64))) x)))

explain85.0ms (4.5%)

FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
1300-0-(sqrt.f64 (-.f64 (*.f64 x x) #s(literal 1 binary64)))
00-0-x
00-0-(-.f64 (*.f64 x x) #s(literal 1 binary64))
00-0-(*.f64 x x)
00-0-(log.f64 (+.f64 x (sqrt.f64 (-.f64 (*.f64 x x) #s(literal 1 binary64)))))
00-0-#s(literal 1 binary64)
00-0-(+.f64 x (sqrt.f64 (-.f64 (*.f64 x x) #s(literal 1 binary64))))
Results
46.0ms512×256valid
Compiler

Compiled 80 to 23 computations (71.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 27.0ms
ival-log: 8.0ms (29.2% of total)
ival-sqrt: 8.0ms (29.2% of total)
ival-mult: 4.0ms (14.6% of total)
ival-sub: 3.0ms (11% of total)
ival-add: 3.0ms (11% of total)
const: 1.0ms (3.7% of total)

eval0.0ms (0%)

Compiler

Compiled 1 to 1 computations (0% saved)

prune1.0ms (0%)

Alt Table
Click to see full alt table
StatusAccuracyProgram
50.8%
(log.f64 (+.f64 x (sqrt.f64 (-.f64 (*.f64 x x) #s(literal 1 binary64)))))
Compiler

Compiled 20 to 14 computations (30% saved)

simplify7.0ms (0.4%)

Algorithm
egg-herbie
Rules
1-exp
+-commutative
unsub-neg
sub-neg
neg-mul-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01236
12036
22436
32736
43036
53336
Stop Event
saturated
Calls
Call 1
Inputs
(log.f64 (+.f64 x (sqrt.f64 (-.f64 (*.f64 x x) #s(literal 1 binary64)))))
Outputs
(log.f64 (+.f64 x (sqrt.f64 (-.f64 (*.f64 x x) #s(literal 1 binary64)))))
(log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) #s(literal -1 binary64)))))

soundness0.0ms (0%)

Stop Event
fuel
Compiler

Compiled 10 to 7 computations (30% saved)

preprocess25.0ms (1.3%)

Compiler

Compiled 40 to 28 computations (30% saved)

end0.0ms (0%)

Profiling

Loading profile data...