Quotient of products

Time bar (total: 2.8s)

analyze129.0ms (4.7%)

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
25%25%74.9%0.2%0%0%0%5
25%25%74.9%0.2%0%0%0%6
25%25%74.9%0.2%0%0%0%7
37.5%37.4%62.4%0.2%0%0%0%8
56.3%56.1%43.7%0.2%0%0%0%9
56.3%56.1%43.7%0.2%0%0%0%10
56.3%56.1%43.7%0.2%0%0%0%11
65.6%65.5%34.3%0.2%0%0%0%12
Compiler

Compiled 24 to 16 computations (33.3% saved)

sample2.5s (90.4%)

Results
417.0ms8256×0valid-rival-baseline
459.0ms8256×0valid-rival
547.0ms8255×0valid-sollya
Bogosity

preprocess94.0ms (3.4%)

Algorithm
egg-herbie
Rules
1205×fma-define
591×div-sub
554×unsub-neg
342×times-frac
320×associate-/r*
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
045512
1143512
2419512
31300512
43246512
56593512
Stop Event
node limit
Calls
Call 1
Inputs
(/.f64 (*.f64 a1 a2) (*.f64 b1 b2))
(/.f64 (*.f64 a1 a2) (*.f64 b1 b2))
(/.f64 (*.f64 (neg.f64 a1) a2) (*.f64 b1 b2))
(/.f64 (*.f64 a1 (neg.f64 a2)) (*.f64 b1 b2))
(/.f64 (*.f64 a1 a2) (*.f64 (neg.f64 b1) b2))
(/.f64 (*.f64 a1 a2) (*.f64 b1 (neg.f64 b2)))
(neg.f64 (/.f64 (*.f64 (neg.f64 a1) a2) (*.f64 b1 b2)))
(neg.f64 (/.f64 (*.f64 a1 (neg.f64 a2)) (*.f64 b1 b2)))
(neg.f64 (/.f64 (*.f64 a1 a2) (*.f64 (neg.f64 b1) b2)))
(neg.f64 (/.f64 (*.f64 a1 a2) (*.f64 b1 (neg.f64 b2))))
(/.f64 (*.f64 a2 a1) (*.f64 b1 b2))
(/.f64 (*.f64 b1 a2) (*.f64 a1 b2))
(/.f64 (*.f64 b2 a2) (*.f64 b1 a1))
(/.f64 (*.f64 a1 b1) (*.f64 a2 b2))
(/.f64 (*.f64 a1 b2) (*.f64 b1 a2))
(/.f64 (*.f64 a1 a2) (*.f64 b2 b1))
Outputs
(/.f64 (*.f64 a1 a2) (*.f64 b1 b2))
(*.f64 (/.f64 a1 b1) (/.f64 a2 b2))
(*.f64 a1 (/.f64 a2 (*.f64 b1 b2)))
(*.f64 a1 (/.f64 (/.f64 a2 b1) b2))
(/.f64 (*.f64 a1 a2) (*.f64 b1 b2))
(*.f64 (/.f64 a1 b1) (/.f64 a2 b2))
(*.f64 a1 (/.f64 a2 (*.f64 b1 b2)))
(*.f64 a1 (/.f64 (/.f64 a2 b1) b2))
(/.f64 (*.f64 (neg.f64 a1) a2) (*.f64 b1 b2))
(*.f64 (neg.f64 a1) (/.f64 a2 (*.f64 b1 b2)))
(*.f64 (neg.f64 a2) (/.f64 (/.f64 a1 b2) b1))
(*.f64 (neg.f64 a1) (/.f64 (/.f64 a2 b1) b2))
(/.f64 (*.f64 a1 (neg.f64 a2)) (*.f64 b1 b2))
(*.f64 (neg.f64 a1) (/.f64 a2 (*.f64 b1 b2)))
(*.f64 (neg.f64 a2) (/.f64 (/.f64 a1 b2) b1))
(*.f64 (neg.f64 a1) (/.f64 (/.f64 a2 b1) b2))
(/.f64 (*.f64 a1 a2) (*.f64 (neg.f64 b1) b2))
(*.f64 (neg.f64 a1) (/.f64 a2 (*.f64 b1 b2)))
(*.f64 (neg.f64 a2) (/.f64 (/.f64 a1 b2) b1))
(*.f64 (neg.f64 a1) (/.f64 (/.f64 a2 b1) b2))
(/.f64 (*.f64 a1 a2) (*.f64 b1 (neg.f64 b2)))
(*.f64 (neg.f64 a1) (/.f64 a2 (*.f64 b1 b2)))
(*.f64 (neg.f64 a2) (/.f64 (/.f64 a1 b2) b1))
(*.f64 (neg.f64 a1) (/.f64 (/.f64 a2 b1) b2))
(neg.f64 (/.f64 (*.f64 (neg.f64 a1) a2) (*.f64 b1 b2)))
(*.f64 (/.f64 a1 b1) (/.f64 a2 b2))
(*.f64 a1 (/.f64 a2 (*.f64 b1 b2)))
(*.f64 a1 (/.f64 (/.f64 a2 b1) b2))
(neg.f64 (/.f64 (*.f64 a1 (neg.f64 a2)) (*.f64 b1 b2)))
(*.f64 (/.f64 a1 b1) (/.f64 a2 b2))
(*.f64 a1 (/.f64 a2 (*.f64 b1 b2)))
(*.f64 a1 (/.f64 (/.f64 a2 b1) b2))
(neg.f64 (/.f64 (*.f64 a1 a2) (*.f64 (neg.f64 b1) b2)))
(*.f64 (/.f64 a1 b1) (/.f64 a2 b2))
(*.f64 a1 (/.f64 a2 (*.f64 b1 b2)))
(*.f64 a1 (/.f64 (/.f64 a2 b1) b2))
(neg.f64 (/.f64 (*.f64 a1 a2) (*.f64 b1 (neg.f64 b2))))
(*.f64 (/.f64 a1 b1) (/.f64 a2 b2))
(*.f64 a1 (/.f64 a2 (*.f64 b1 b2)))
(*.f64 a1 (/.f64 (/.f64 a2 b1) b2))
(/.f64 (*.f64 a2 a1) (*.f64 b1 b2))
(*.f64 (/.f64 a1 b1) (/.f64 a2 b2))
(*.f64 a1 (/.f64 a2 (*.f64 b1 b2)))
(*.f64 a1 (/.f64 (/.f64 a2 b1) b2))
(/.f64 (*.f64 b1 a2) (*.f64 a1 b2))
(*.f64 b1 (/.f64 a2 (*.f64 a1 b2)))
(*.f64 b1 (/.f64 (/.f64 a2 b2) a1))
(*.f64 a2 (/.f64 b1 (*.f64 a1 b2)))
(/.f64 (*.f64 b2 a2) (*.f64 b1 a1))
(*.f64 (/.f64 b2 b1) (/.f64 a2 a1))
(/.f64 (*.f64 a2 b2) (*.f64 a1 b1))
(*.f64 b2 (/.f64 a2 (*.f64 a1 b1)))
(*.f64 b2 (/.f64 (/.f64 a2 b1) a1))
(/.f64 (*.f64 a1 b1) (*.f64 a2 b2))
(*.f64 (/.f64 a1 a2) (/.f64 b1 b2))
(*.f64 a1 (/.f64 b1 (*.f64 a2 b2)))
(*.f64 b1 (/.f64 a1 (*.f64 a2 b2)))
(/.f64 (*.f64 a1 b2) (*.f64 b1 a2))
(*.f64 (/.f64 a1 b1) (/.f64 b2 a2))
(*.f64 a1 (/.f64 (/.f64 b2 b1) a2))
(*.f64 a1 (/.f64 b2 (*.f64 a2 b1)))
(/.f64 (*.f64 a1 a2) (*.f64 b2 b1))
(*.f64 (/.f64 a1 b1) (/.f64 a2 b2))
(*.f64 a1 (/.f64 a2 (*.f64 b1 b2)))
(*.f64 a1 (/.f64 (/.f64 a2 b1) b2))
Symmetry

(negabs a1)

(negabs a2)

(negabs b1)

(negabs b2)

(sort a1 a2)

(sort b1 b2)

Compiler

Compiled 11 to 7 computations (36.4% saved)

eval0.0ms (0%)

Compiler

Compiled 4 to 4 computations (0% saved)

prune1.0ms (0%)

Alt Table
Click to see full alt table
StatusAccuracyProgram
85.8%
(/.f64 (*.f64 a1 a2) (*.f64 b1 b2))
Compiler

Compiled 22 to 14 computations (36.4% saved)

simplify2.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01431
11631
Stop Event
saturated
Calls
Call 1
Inputs
(/.f64 (*.f64 a1 a2) (*.f64 b1 b2))
Outputs
(/.f64 (*.f64 a1 a2) (*.f64 b1 b2))

soundness0.0ms (0%)

Stop Event
fuel
Compiler

Compiled 11 to 7 computations (36.4% saved)

preprocess40.0ms (1.5%)

Remove

(sort b1 b2)

(sort a1 a2)

(negabs b2)

(negabs b1)

(negabs a2)

(negabs a1)

Compiler

Compiled 330 to 210 computations (36.4% saved)

end0.0ms (0%)

Profiling

Loading profile data...