Maksimov and Kolovsky, Equation (4)

Time bar (total: 20.3s)

analyze16.0ms (0.1%)

Memory
4.9MiB live, 4.9MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.8%0.2%0%0%0%0
100%99.8%0%0.2%0%0%0%1
Compiler

Compiled 37 to 31 computations (16.2% saved)

sample20.2s (99.3%)

Memory
31.6MiB live, 3 662.0MiB allocated
Samples
369.0ms4 027×73valid-rival+baseline-inf
368.0ms547×1168valid-baseline
293.0ms663×584valid-baseline
268.0ms2 255×73valid-sollya
242.0ms2 255×73valid-baseline
233.0ms547×1168valid-rival
211.0ms663×584valid-rival
210.0ms2 255×73valid-rival
194.0ms547×1168valid-sollya
155.0ms488×292valid-baseline
133.0ms488×292valid-rival
125.0ms663×584valid-sollya
59.0ms488×292valid-sollya
59.0ms276×146valid-baseline
47.0ms276×146valid-rival
31.0ms276×146valid-sollya
Precisions
Click to see Rival histograms. Total time spent on operations: 966.0ms
ival-exp: 377.0ms (39% of total)
ival-cos: 241.0ms (24.9% of total)
ival-mult: 112.0ms (11.6% of total)
ival-div: 57.0ms (5.9% of total)
ival-sub: 48.0ms (5% of total)
ival-add: 44.0ms (4.6% of total)
ival-neg: 40.0ms (4.1% of total)
adjust: 30.0ms (3.1% of total)
ival-true: 8.0ms (0.8% of total)
...in/eval/compile.rkt:110:19: 4.0ms (0.4% of total)
ival-assert: 4.0ms (0.4% of total)
Precisions
Click to see Base histograms. Total time spent on operations: 1.0s
ival-exp: 302.0ms (29.3% of total)
ival-cos: 285.0ms (27.7% of total)
ival-mult: 153.0ms (14.8% of total)
ival-div: 84.0ms (8.2% of total)
ival-sub: 66.0ms (6.4% of total)
ival-add: 64.0ms (6.2% of total)
ival-neg: 59.0ms (5.7% of total)
const: 17.0ms (1.6% of total)
Bogosity

preprocess95.0ms (0.5%)

Memory
8.5MiB live, 24.0MiB allocated
Algorithm
egg-herbie
Rules
633×times-frac
555×fmm-def
462×unsub-neg
430×fma-define
384×distribute-lft-in
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
075960
1184956
2502944
31746944
45785944
Stop Event
node limit
Calls
Call 1
Inputs
(+.f64 (*.f64 (*.f64 J (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l)))) (cos.f64 (/.f64 K #s(literal 2 binary64)))) U)
(+.f64 (*.f64 (*.f64 J (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l)))) (cos.f64 (/.f64 K #s(literal 2 binary64)))) U)
(+.f64 (*.f64 (*.f64 (neg.f64 J) (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l)))) (cos.f64 (/.f64 K #s(literal 2 binary64)))) U)
(+.f64 (*.f64 (*.f64 J (-.f64 (exp.f64 (neg.f64 l)) (exp.f64 (neg.f64 (neg.f64 l))))) (cos.f64 (/.f64 K #s(literal 2 binary64)))) U)
(+.f64 (*.f64 (*.f64 J (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l)))) (cos.f64 (/.f64 (neg.f64 K) #s(literal 2 binary64)))) U)
(+.f64 (*.f64 (*.f64 J (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l)))) (cos.f64 (/.f64 K #s(literal 2 binary64)))) (neg.f64 U))
(neg.f64 (+.f64 (*.f64 (*.f64 (neg.f64 J) (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l)))) (cos.f64 (/.f64 K #s(literal 2 binary64)))) U))
(neg.f64 (+.f64 (*.f64 (*.f64 J (-.f64 (exp.f64 (neg.f64 l)) (exp.f64 (neg.f64 (neg.f64 l))))) (cos.f64 (/.f64 K #s(literal 2 binary64)))) U))
(neg.f64 (+.f64 (*.f64 (*.f64 J (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l)))) (cos.f64 (/.f64 (neg.f64 K) #s(literal 2 binary64)))) U))
(neg.f64 (+.f64 (*.f64 (*.f64 J (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l)))) (cos.f64 (/.f64 K #s(literal 2 binary64)))) (neg.f64 U)))
(+.f64 (*.f64 (*.f64 l (-.f64 (exp.f64 J) (exp.f64 (neg.f64 J)))) (cos.f64 (/.f64 K #s(literal 2 binary64)))) U)
(+.f64 (*.f64 (*.f64 K (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l)))) (cos.f64 (/.f64 J #s(literal 2 binary64)))) U)
(+.f64 (*.f64 (*.f64 U (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l)))) (cos.f64 (/.f64 K #s(literal 2 binary64)))) J)
(+.f64 (*.f64 (*.f64 J (-.f64 (exp.f64 K) (exp.f64 (neg.f64 K)))) (cos.f64 (/.f64 l #s(literal 2 binary64)))) U)
(+.f64 (*.f64 (*.f64 J (-.f64 (exp.f64 U) (exp.f64 (neg.f64 U)))) (cos.f64 (/.f64 K #s(literal 2 binary64)))) l)
(+.f64 (*.f64 (*.f64 J (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l)))) (cos.f64 (/.f64 U #s(literal 2 binary64)))) K)
Outputs
(+.f64 (*.f64 (*.f64 J (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l)))) (cos.f64 (/.f64 K #s(literal 2 binary64)))) U)
(fma.f64 (*.f64 J (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l)))) (cos.f64 (/.f64 K #s(literal 2 binary64))) U)
(fma.f64 J (*.f64 (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l))) (cos.f64 (/.f64 K #s(literal 2 binary64)))) U)
(+.f64 (*.f64 (*.f64 J (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l)))) (cos.f64 (/.f64 K #s(literal 2 binary64)))) U)
(fma.f64 (*.f64 J (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l)))) (cos.f64 (/.f64 K #s(literal 2 binary64))) U)
(fma.f64 J (*.f64 (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l))) (cos.f64 (/.f64 K #s(literal 2 binary64)))) U)
(+.f64 (*.f64 (*.f64 (neg.f64 J) (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l)))) (cos.f64 (/.f64 K #s(literal 2 binary64)))) U)
(fma.f64 (*.f64 (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l))) (neg.f64 J)) (cos.f64 (/.f64 K #s(literal 2 binary64))) U)
(-.f64 U (*.f64 (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l))) (*.f64 J (cos.f64 (/.f64 K #s(literal 2 binary64))))))
(fma.f64 (-.f64 (exp.f64 (neg.f64 l)) (exp.f64 l)) (*.f64 J (cos.f64 (/.f64 K #s(literal 2 binary64)))) U)
(fma.f64 J (*.f64 (cos.f64 (/.f64 K #s(literal 2 binary64))) (-.f64 (exp.f64 (neg.f64 l)) (exp.f64 l))) U)
(+.f64 (*.f64 (*.f64 J (-.f64 (exp.f64 (neg.f64 l)) (exp.f64 (neg.f64 (neg.f64 l))))) (cos.f64 (/.f64 K #s(literal 2 binary64)))) U)
(fma.f64 (*.f64 (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l))) (neg.f64 J)) (cos.f64 (/.f64 K #s(literal 2 binary64))) U)
(-.f64 U (*.f64 (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l))) (*.f64 J (cos.f64 (/.f64 K #s(literal 2 binary64))))))
(fma.f64 (-.f64 (exp.f64 (neg.f64 l)) (exp.f64 l)) (*.f64 J (cos.f64 (/.f64 K #s(literal 2 binary64)))) U)
(fma.f64 J (*.f64 (cos.f64 (/.f64 K #s(literal 2 binary64))) (-.f64 (exp.f64 (neg.f64 l)) (exp.f64 l))) U)
(+.f64 (*.f64 (*.f64 J (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l)))) (cos.f64 (/.f64 (neg.f64 K) #s(literal 2 binary64)))) U)
(fma.f64 (*.f64 J (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l)))) (cos.f64 (/.f64 K #s(literal 2 binary64))) U)
(fma.f64 J (*.f64 (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l))) (cos.f64 (/.f64 K #s(literal 2 binary64)))) U)
(+.f64 (*.f64 (*.f64 J (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l)))) (cos.f64 (/.f64 K #s(literal 2 binary64)))) (neg.f64 U))
(fma.f64 (*.f64 J (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l)))) (cos.f64 (/.f64 K #s(literal 2 binary64))) (neg.f64 U))
(-.f64 (*.f64 (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l))) (*.f64 J (cos.f64 (/.f64 K #s(literal 2 binary64))))) U)
(neg.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 l)) (exp.f64 l)) (*.f64 J (cos.f64 (/.f64 K #s(literal 2 binary64)))) U))
(-.f64 (*.f64 J (*.f64 (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l))) (cos.f64 (/.f64 K #s(literal 2 binary64))))) U)
(neg.f64 (+.f64 (*.f64 (*.f64 (neg.f64 J) (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l)))) (cos.f64 (/.f64 K #s(literal 2 binary64)))) U))
(fma.f64 (*.f64 J (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l)))) (cos.f64 (/.f64 K #s(literal 2 binary64))) (neg.f64 U))
(-.f64 (*.f64 (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l))) (*.f64 J (cos.f64 (/.f64 K #s(literal 2 binary64))))) U)
(neg.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 l)) (exp.f64 l)) (*.f64 J (cos.f64 (/.f64 K #s(literal 2 binary64)))) U))
(-.f64 (*.f64 J (*.f64 (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l))) (cos.f64 (/.f64 K #s(literal 2 binary64))))) U)
(neg.f64 (+.f64 (*.f64 (*.f64 J (-.f64 (exp.f64 (neg.f64 l)) (exp.f64 (neg.f64 (neg.f64 l))))) (cos.f64 (/.f64 K #s(literal 2 binary64)))) U))
(fma.f64 (*.f64 J (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l)))) (cos.f64 (/.f64 K #s(literal 2 binary64))) (neg.f64 U))
(-.f64 (*.f64 (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l))) (*.f64 J (cos.f64 (/.f64 K #s(literal 2 binary64))))) U)
(neg.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 l)) (exp.f64 l)) (*.f64 J (cos.f64 (/.f64 K #s(literal 2 binary64)))) U))
(-.f64 (*.f64 J (*.f64 (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l))) (cos.f64 (/.f64 K #s(literal 2 binary64))))) U)
(neg.f64 (+.f64 (*.f64 (*.f64 J (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l)))) (cos.f64 (/.f64 (neg.f64 K) #s(literal 2 binary64)))) U))
(neg.f64 (fma.f64 (*.f64 J (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l)))) (cos.f64 (/.f64 (neg.f64 K) #s(literal 2 binary64))) U))
(neg.f64 (fma.f64 J (*.f64 (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l))) (cos.f64 (/.f64 K #s(literal 2 binary64)))) U))
(neg.f64 (+.f64 (*.f64 (*.f64 J (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l)))) (cos.f64 (/.f64 K #s(literal 2 binary64)))) (neg.f64 U)))
(fma.f64 (*.f64 (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l))) (neg.f64 J)) (cos.f64 (/.f64 K #s(literal 2 binary64))) U)
(-.f64 U (*.f64 (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l))) (*.f64 J (cos.f64 (/.f64 K #s(literal 2 binary64))))))
(fma.f64 (-.f64 (exp.f64 (neg.f64 l)) (exp.f64 l)) (*.f64 J (cos.f64 (/.f64 K #s(literal 2 binary64)))) U)
(fma.f64 J (*.f64 (cos.f64 (/.f64 K #s(literal 2 binary64))) (-.f64 (exp.f64 (neg.f64 l)) (exp.f64 l))) U)
(+.f64 (*.f64 (*.f64 l (-.f64 (exp.f64 J) (exp.f64 (neg.f64 J)))) (cos.f64 (/.f64 K #s(literal 2 binary64)))) U)
(fma.f64 (*.f64 l (-.f64 (exp.f64 J) (exp.f64 (neg.f64 J)))) (cos.f64 (/.f64 K #s(literal 2 binary64))) U)
(fma.f64 l (*.f64 (cos.f64 (/.f64 K #s(literal 2 binary64))) (-.f64 (exp.f64 J) (exp.f64 (neg.f64 J)))) U)
(+.f64 (*.f64 (*.f64 K (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l)))) (cos.f64 (/.f64 J #s(literal 2 binary64)))) U)
(fma.f64 (*.f64 (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l))) K) (cos.f64 (/.f64 J #s(literal 2 binary64))) U)
(fma.f64 K (*.f64 (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l))) (cos.f64 (/.f64 J #s(literal 2 binary64)))) U)
(fma.f64 (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l))) (*.f64 K (cos.f64 (/.f64 J #s(literal 2 binary64)))) U)
(fma.f64 (*.f64 (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l))) K) (cos.f64 (*.f64 J #s(literal 1/2 binary64))) U)
(+.f64 (*.f64 (*.f64 U (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l)))) (cos.f64 (/.f64 K #s(literal 2 binary64)))) J)
(fma.f64 (*.f64 (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l))) U) (cos.f64 (/.f64 K #s(literal 2 binary64))) J)
(fma.f64 (cos.f64 (/.f64 K #s(literal 2 binary64))) (*.f64 (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l))) U) J)
(fma.f64 (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l))) (*.f64 (cos.f64 (/.f64 K #s(literal 2 binary64))) U) J)
(fma.f64 U (*.f64 (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l))) (cos.f64 (/.f64 K #s(literal 2 binary64)))) J)
(+.f64 (*.f64 (*.f64 J (-.f64 (exp.f64 K) (exp.f64 (neg.f64 K)))) (cos.f64 (/.f64 l #s(literal 2 binary64)))) U)
(fma.f64 (*.f64 J (-.f64 (exp.f64 K) (exp.f64 (neg.f64 K)))) (cos.f64 (/.f64 l #s(literal 2 binary64))) U)
(fma.f64 J (*.f64 (-.f64 (exp.f64 K) (exp.f64 (neg.f64 K))) (cos.f64 (/.f64 l #s(literal 2 binary64)))) U)
(fma.f64 J (*.f64 (-.f64 (exp.f64 K) (exp.f64 (neg.f64 K))) (cos.f64 (*.f64 l #s(literal 1/2 binary64)))) U)
(+.f64 (*.f64 (*.f64 J (-.f64 (exp.f64 U) (exp.f64 (neg.f64 U)))) (cos.f64 (/.f64 K #s(literal 2 binary64)))) l)
(fma.f64 (*.f64 J (-.f64 (exp.f64 U) (exp.f64 (neg.f64 U)))) (cos.f64 (/.f64 K #s(literal 2 binary64))) l)
(fma.f64 (cos.f64 (/.f64 K #s(literal 2 binary64))) (*.f64 J (-.f64 (exp.f64 U) (exp.f64 (neg.f64 U)))) l)
(fma.f64 (-.f64 (exp.f64 U) (exp.f64 (neg.f64 U))) (*.f64 J (cos.f64 (/.f64 K #s(literal 2 binary64)))) l)
(fma.f64 J (*.f64 (cos.f64 (/.f64 K #s(literal 2 binary64))) (-.f64 (exp.f64 U) (exp.f64 (neg.f64 U)))) l)
(+.f64 (*.f64 (*.f64 J (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l)))) (cos.f64 (/.f64 U #s(literal 2 binary64)))) K)
(fma.f64 (*.f64 J (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l)))) (cos.f64 (/.f64 U #s(literal 2 binary64))) K)
(fma.f64 J (*.f64 (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l))) (cos.f64 (/.f64 U #s(literal 2 binary64)))) K)
(fma.f64 (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l))) (*.f64 J (cos.f64 (*.f64 U #s(literal 1/2 binary64)))) K)
Symmetry

(abs K)

Compiler

Compiled 19 to 14 computations (26.3% saved)

eval0.0ms (0%)

Memory
0.3MiB live, 0.3MiB allocated
Compiler

Compiled 4 to 4 computations (0% saved)

prune1.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
89.8%
(+.f64 (*.f64 (*.f64 J (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l)))) (cos.f64 (/.f64 K #s(literal 2 binary64)))) U)
Compiler

Compiled 38 to 28 computations (26.3% saved)

simplify2.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated
Algorithm
egg-herbie
Rules
*-commutative
+-commutative
sub-neg
neg-sub0
neg-mul-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02262
13162
23662
33962
44062
Stop Event
saturated
Calls
Call 1
Inputs
(+.f64 (*.f64 (*.f64 J (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l)))) (cos.f64 (/.f64 K #s(literal 2 binary64)))) U)
Outputs
(+.f64 (*.f64 (*.f64 J (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l)))) (cos.f64 (/.f64 K #s(literal 2 binary64)))) U)

soundness0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated
Stop Event
fuel
Compiler

Compiled 19 to 14 computations (26.3% saved)

preprocess21.0ms (0.1%)

Memory
-6.5MiB live, 24.8MiB allocated
Remove

(abs K)

Compiler

Compiled 152 to 112 computations (26.3% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...