NMSE Section 6.1 mentioned, B

Time bar (total: 5.8s)

analyze141.0ms (2.4%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
0%0%99.9%0.1%0%0%0%1
0%0%99.9%0.1%0%0%0%2
0%0%99.9%0.1%0%0%0%3
0%0%99.9%0.1%0%0%0%4
12.5%12.5%87.4%0.1%0%0%0%5
25%25%74.9%0.1%0%0%0%6
46.9%46.8%53.1%0.1%0%0%0%7
56.3%56.2%43.7%0.1%0%0%0%8
71.1%71%28.9%0.1%0%0%0%9
76.6%76.5%23.4%0.1%0%0%0%10
85%84.9%15%0.1%0%0%0%11
87.9%87.8%12.1%0.1%0%0%0%12
Compiler

Compiled 48 to 32 computations (33.3% saved)

sample5.5s (94.7%)

Results
992.0ms8239×0valid-sollya
950.0ms8233×0valid-rival-baseline
1.0s8233×0valid-rival
Bogosity

preprocess133.0ms (2.3%)

Algorithm
egg-herbie
Rules
696×div-sub
504×fma-define
393×associate-/l*
326×*-commutative
295×associate-/l/
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
044583
1149525
2492525
32442525
45869525
Stop Event
node limit
Calls
Call 1
Inputs
(*.f64 (*.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 b b) (*.f64 a a)))) (-.f64 (/.f64 #s(literal 1 binary64) a) (/.f64 #s(literal 1 binary64) b)))
(*.f64 (*.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 b b) (*.f64 a a)))) (-.f64 (/.f64 #s(literal 1 binary64) a) (/.f64 #s(literal 1 binary64) b)))
(*.f64 (*.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 b b) (*.f64 (neg.f64 a) (neg.f64 a))))) (-.f64 (/.f64 #s(literal 1 binary64) (neg.f64 a)) (/.f64 #s(literal 1 binary64) b)))
(*.f64 (*.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 (neg.f64 b) (neg.f64 b)) (*.f64 a a)))) (-.f64 (/.f64 #s(literal 1 binary64) a) (/.f64 #s(literal 1 binary64) (neg.f64 b))))
(neg.f64 (*.f64 (*.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 b b) (*.f64 (neg.f64 a) (neg.f64 a))))) (-.f64 (/.f64 #s(literal 1 binary64) (neg.f64 a)) (/.f64 #s(literal 1 binary64) b))))
(neg.f64 (*.f64 (*.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 (neg.f64 b) (neg.f64 b)) (*.f64 a a)))) (-.f64 (/.f64 #s(literal 1 binary64) a) (/.f64 #s(literal 1 binary64) (neg.f64 b)))))
(*.f64 (*.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 a a) (*.f64 b b)))) (-.f64 (/.f64 #s(literal 1 binary64) b) (/.f64 #s(literal 1 binary64) a)))
Outputs
(*.f64 (*.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 b b) (*.f64 a a)))) (-.f64 (/.f64 #s(literal 1 binary64) a) (/.f64 #s(literal 1 binary64) b)))
(*.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (*.f64 (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 b b) (*.f64 a a))) (-.f64 (/.f64 #s(literal 1 binary64) a) (/.f64 #s(literal 1 binary64) b))))
(/.f64 (*.f64 (+.f64 (/.f64 #s(literal 1 binary64) a) (/.f64 #s(literal -1 binary64) b)) (/.f64 (PI.f64) #s(literal 2 binary64))) (-.f64 (*.f64 b b) (*.f64 a a)))
(*.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) (/.f64 (+.f64 (/.f64 #s(literal 1 binary64) a) (/.f64 #s(literal -1 binary64) b)) (-.f64 (*.f64 b b) (*.f64 a a))))
(*.f64 (*.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 b b) (*.f64 a a)))) (-.f64 (/.f64 #s(literal 1 binary64) a) (/.f64 #s(literal 1 binary64) b)))
(*.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (*.f64 (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 b b) (*.f64 a a))) (-.f64 (/.f64 #s(literal 1 binary64) a) (/.f64 #s(literal 1 binary64) b))))
(/.f64 (*.f64 (+.f64 (/.f64 #s(literal 1 binary64) a) (/.f64 #s(literal -1 binary64) b)) (/.f64 (PI.f64) #s(literal 2 binary64))) (-.f64 (*.f64 b b) (*.f64 a a)))
(*.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) (/.f64 (+.f64 (/.f64 #s(literal 1 binary64) a) (/.f64 #s(literal -1 binary64) b)) (-.f64 (*.f64 b b) (*.f64 a a))))
(*.f64 (*.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 b b) (*.f64 (neg.f64 a) (neg.f64 a))))) (-.f64 (/.f64 #s(literal 1 binary64) (neg.f64 a)) (/.f64 #s(literal 1 binary64) b)))
(*.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (*.f64 (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 b b) (*.f64 a a))) (-.f64 (/.f64 #s(literal 1 binary64) (neg.f64 a)) (/.f64 #s(literal 1 binary64) b))))
(*.f64 (+.f64 (/.f64 #s(literal -1 binary64) a) (/.f64 #s(literal -1 binary64) b)) (/.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (-.f64 (*.f64 b b) (*.f64 a a))))
(*.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) (/.f64 (+.f64 (/.f64 #s(literal -1 binary64) a) (/.f64 #s(literal -1 binary64) b)) (-.f64 (*.f64 b b) (*.f64 a a))))
(*.f64 (+.f64 (/.f64 #s(literal -1 binary64) a) (/.f64 #s(literal -1 binary64) b)) (/.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) (-.f64 (*.f64 b b) (*.f64 a a))))
(*.f64 (*.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 (neg.f64 b) (neg.f64 b)) (*.f64 a a)))) (-.f64 (/.f64 #s(literal 1 binary64) a) (/.f64 #s(literal 1 binary64) (neg.f64 b))))
(*.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (*.f64 (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 b b) (*.f64 a a))) (-.f64 (/.f64 #s(literal 1 binary64) a) (/.f64 #s(literal 1 binary64) (neg.f64 b)))))
(/.f64 (*.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (+.f64 (/.f64 #s(literal 1 binary64) a) (/.f64 #s(literal 1 binary64) b))) (-.f64 (*.f64 b b) (*.f64 a a)))
(*.f64 (+.f64 (/.f64 #s(literal -1 binary64) a) (/.f64 #s(literal -1 binary64) b)) (/.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) (-.f64 (*.f64 a a) (*.f64 b b))))
(*.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) (/.f64 (+.f64 (/.f64 #s(literal -1 binary64) a) (/.f64 #s(literal -1 binary64) b)) (-.f64 (*.f64 a a) (*.f64 b b))))
(neg.f64 (*.f64 (*.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 b b) (*.f64 (neg.f64 a) (neg.f64 a))))) (-.f64 (/.f64 #s(literal 1 binary64) (neg.f64 a)) (/.f64 #s(literal 1 binary64) b))))
(*.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (*.f64 (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 b b) (*.f64 a a))) (-.f64 (/.f64 #s(literal 1 binary64) a) (/.f64 #s(literal 1 binary64) (neg.f64 b)))))
(/.f64 (*.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (+.f64 (/.f64 #s(literal 1 binary64) a) (/.f64 #s(literal 1 binary64) b))) (-.f64 (*.f64 b b) (*.f64 a a)))
(*.f64 (+.f64 (/.f64 #s(literal -1 binary64) a) (/.f64 #s(literal -1 binary64) b)) (/.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) (-.f64 (*.f64 a a) (*.f64 b b))))
(*.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) (/.f64 (+.f64 (/.f64 #s(literal -1 binary64) a) (/.f64 #s(literal -1 binary64) b)) (-.f64 (*.f64 a a) (*.f64 b b))))
(neg.f64 (*.f64 (*.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 (neg.f64 b) (neg.f64 b)) (*.f64 a a)))) (-.f64 (/.f64 #s(literal 1 binary64) a) (/.f64 #s(literal 1 binary64) (neg.f64 b)))))
(*.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (*.f64 (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 b b) (*.f64 a a))) (-.f64 (/.f64 #s(literal 1 binary64) (neg.f64 a)) (/.f64 #s(literal 1 binary64) b))))
(*.f64 (+.f64 (/.f64 #s(literal -1 binary64) a) (/.f64 #s(literal -1 binary64) b)) (/.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (-.f64 (*.f64 b b) (*.f64 a a))))
(*.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) (/.f64 (+.f64 (/.f64 #s(literal -1 binary64) a) (/.f64 #s(literal -1 binary64) b)) (-.f64 (*.f64 b b) (*.f64 a a))))
(*.f64 (+.f64 (/.f64 #s(literal -1 binary64) a) (/.f64 #s(literal -1 binary64) b)) (/.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) (-.f64 (*.f64 b b) (*.f64 a a))))
(*.f64 (*.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 a a) (*.f64 b b)))) (-.f64 (/.f64 #s(literal 1 binary64) b) (/.f64 #s(literal 1 binary64) a)))
(*.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (*.f64 (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 b b) (*.f64 a a))) (-.f64 (/.f64 #s(literal 1 binary64) a) (/.f64 #s(literal 1 binary64) b))))
(/.f64 (*.f64 (+.f64 (/.f64 #s(literal 1 binary64) a) (/.f64 #s(literal -1 binary64) b)) (/.f64 (PI.f64) #s(literal 2 binary64))) (-.f64 (*.f64 b b) (*.f64 a a)))
(*.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) (/.f64 (+.f64 (/.f64 #s(literal 1 binary64) a) (/.f64 #s(literal -1 binary64) b)) (-.f64 (*.f64 b b) (*.f64 a a))))
Symmetry

(sort a b)

Compiler

Compiled 23 to 15 computations (34.8% saved)

eval0.0ms (0%)

Compiler

Compiled 2 to 2 computations (0% saved)

prune1.0ms (0%)

Alt Table
Click to see full alt table
StatusAccuracyProgram
78.5%
(*.f64 (*.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 b b) (*.f64 a a)))) (-.f64 (/.f64 #s(literal 1 binary64) a) (/.f64 #s(literal 1 binary64) b)))
Compiler

Compiled 46 to 30 computations (34.8% saved)

simplify4.0ms (0.1%)

Algorithm
egg-herbie
Rules
14×neg-mul-1
13×unsub-neg
sub-neg
*-commutative
+-commutative
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02081
13581
24981
35981
46881
58881
611881
Stop Event
saturated
Calls
Call 1
Inputs
(*.f64 (*.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 b b) (*.f64 a a)))) (-.f64 (/.f64 #s(literal 1 binary64) a) (/.f64 #s(literal 1 binary64) b)))
Outputs
(*.f64 (*.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 b b) (*.f64 a a)))) (-.f64 (/.f64 #s(literal 1 binary64) a) (/.f64 #s(literal 1 binary64) b)))
(*.f64 (*.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 b b) (*.f64 a a)))) (+.f64 (/.f64 #s(literal 1 binary64) a) (/.f64 #s(literal -1 binary64) b)))

soundness0.0ms (0%)

Stop Event
fuel
Compiler

Compiled 23 to 16 computations (30.4% saved)

preprocess27.0ms (0.5%)

Remove

(sort a b)

Compiler

Compiled 184 to 126 computations (31.5% saved)

end0.0ms (0%)

Profiling

Loading profile data...