Diagrams.Solve.Polynomial:quartForm from diagrams-solve-0.1, A

Time bar (total: 625.0ms)

start0.0ms (0.0%)

analyze0.0ms (0.1%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0.0%0.0%99.9%0.1%0.0%0.0%0.0%0
100.0%99.9%0.0%0.1%0.0%0.0%0.0%1
Compiler

Compiled 9 to 9 computations (0.0% saved)

sample227.0ms (36.3%)

Samples
145.0ms7 626×0valid
16.0ms141×3valid
5.0ms281×1valid
4.0ms208×2valid
Precisions
Click to see histograms. Total time spent on operations: 6.0ms
Mul: 3.0ms (49.2% of total, 0.0 MiB)
Sub: 2.0ms (32.8% of total, 0.0 MiB)
adjust: 0.0ms (0.0% of total, 0.0 MiB)
Bogosity

preprocess32.0ms (5.1%)

Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01734
18230
224530
372230
4194330
Stop Event
node-limit
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.9%
(-.f64 x (*.f64 (/.f64 #s(literal 3 binary64) #s(literal 8 binary64)) y))
Compiler

Compiled 2 to 14 computations (-600.0% saved)

sample0.0ms (0.0%)

Calls
Call 1
Inputs
(/ 3 8)
Outputs
#s(literal 3/8 binary64)
Samples
0.0ms0valid
Compiler

Compiled 5 to 5 computations (0.0% saved)

series9.0ms (1.4%)

Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
040109
Stop Event
iter-limit
Counts
7 → 11
Calls
Call 1
Inputs
%3 = (/.f64 #s(literal 3 binary64) #s(literal 8 binary64))
%5 = (*.f64 %3 y)
x
#s(literal 3 binary64)
#s(literal 8 binary64)
%3
y
%5
(-.f64 x %5)
Outputs
%6 = (* 3/8 y)
%7 = (- x %6)
%9 = (*.f64 #s(literal -3/8 binary64) y)
%12 = (*.f64 #s(literal 3/8 binary64) y)
%16 = (/.f64 y x)
%31 = (/.f64 x y)
(approx x #s(literal 0 binary64))
(approx x x)
(approx %7 %9)
(approx %7 (-.f64 x %12))
(approx %7 (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -3/8 binary64) %16))))
(approx %7 (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (*.f64 #s(literal 3/8 binary64) %16) #s(literal 1 binary64)))))
(approx y y)
(approx %6 %12)
(approx %7 (+.f64 x %9))
(approx %7 (*.f64 y (-.f64 %31 #s(literal 3/8 binary64))))
(approx %7 (*.f64 #s(literal -1 binary64) (*.f64 y (+.f64 #s(literal 3/8 binary64) (*.f64 #s(literal -1 binary64) %31)))))
Calls

6 calls:

TimeVariablePoint
1.0ms
y
-inf
1.0ms
y
inf
1.0ms
x
-inf
1.0ms
x
inf
0.0ms
y
0

rewrite67.0ms (10.7%)

Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0713
01113
12813
25313
38913
416213
552013
0411313
0422712
Stop Event
iter-limit
iter-limit
node-limit
iter-limit
Counts
7 → 33
Calls
Call 1
Inputs
%3 = (/.f64 #s(literal 3 binary64) #s(literal 8 binary64))
%5 = (*.f64 %3 y)
x
#s(literal 3 binary64)
#s(literal 8 binary64)
%3
y
%5
(-.f64 x %5)
Outputs
%7 = (*.f64 #s(literal -3/8 binary64) y)
%9 = (neg.f64 y)
%13 = (*.f64 y #s(literal 3/8 binary64))
%20 = (-.f64 %13 x)
%22 = (fma.f64 #s(literal -3/8 binary64) y x)
%30 = (*.f64 x #s(literal 1 binary64))
%35 = (*.f64 %7 #s(literal 1 binary64))
x
#s(literal 3 binary64)
#s(literal 8 binary64)
#s(literal 3/8 binary64)
y
(*.f64 #s(literal -1 binary64) %7)
(*.f64 %9 #s(literal -3/8 binary64))
(*.f64 #s(literal -3/8 binary64) %9)
(*.f64 #s(literal 1 binary64) %13)
%13
(*.f64 #s(literal 3/8 binary64) y)
(pow.f64 %13 #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 %13 #s(literal -1 binary64)))
(neg.f64 %7)
(*.f64 #s(literal -1 binary64) %20)
(*.f64 #s(literal 1 binary64) %22)
(pow.f64 %22 #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 %22 #s(literal -1 binary64)))
(neg.f64 %20)
(fma.f64 #s(literal -1 binary64) %13 x)
(fma.f64 %9 #s(literal 3/8 binary64) x)
(fma.f64 %7 #s(literal 1 binary64) %30)
%22
(fma.f64 #s(literal 1 binary64) %7 x)
(fma.f64 y #s(literal -3/8 binary64) x)
(fma.f64 #s(literal 3/8 binary64) %9 x)
(fma.f64 x #s(literal 1 binary64) %35)
(-.f64 %7 (neg.f64 x))
(-.f64 x %13)
(+.f64 %35 %30)
(+.f64 %30 %35)
(+.f64 %7 x)
(+.f64 x %7)

reconstruct3.0ms (0.5%)

Counts
44 → 14
Compiler

Compiled 44 to 61 computations (-38.6% saved)

eval1.0ms (0.2%)

Compiler

Compiled 11 to 32 computations (-190.9% saved)

prune1.0ms (0.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New9211
Fresh000
Picked101
Done000
Total10212
Accuracy
100.0%
Counts
12 → 2
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 #s(literal -3/8 binary64) y x)
51.1%
(approx (- x (* 3/8 y)) (*.f64 #s(literal -3/8 binary64) y))
Compiler

Compiled 2 to 5 computations (-150.0% saved)

sample0.0ms (0.0%)

Calls
Call 1
Inputs
Outputs

series8.0ms (1.4%)

Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
037101
Stop Event
iter-limit
Counts
6 → 10
Calls
Call 1
Inputs
%3 = (*.f64 #s(literal -3/8 binary64) y)
x
y
#s(literal -3/8 binary64)
%3
(approx (- x (* 3/8 y)) %3)
(fma.f64 #s(literal -3/8 binary64) y x)
Outputs
%7 = (- x (* 3/8 y))
%9 = (*.f64 #s(literal -3/8 binary64) y)
%21 = (/.f64 y x)
%33 = (/.f64 x y)
(approx x #s(literal 0 binary64))
(approx x x)
(approx %7 %9)
(approx %7 (-.f64 x (*.f64 #s(literal 3/8 binary64) y)))
(approx (+ (* -3/8 y) x) (+.f64 x %9))
(approx %7 (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -3/8 binary64) %21))))
(approx %7 (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (*.f64 #s(literal 3/8 binary64) %21) #s(literal 1 binary64)))))
(approx y y)
(approx %7 (*.f64 y (-.f64 %33 #s(literal 3/8 binary64))))
(approx %7 (*.f64 #s(literal -1 binary64) (*.f64 y (+.f64 #s(literal 3/8 binary64) (*.f64 #s(literal -1 binary64) %33)))))
Calls

6 calls:

TimeVariablePoint
3.0ms
x
-inf
2.0ms
x
inf
1.0ms
y
-inf
1.0ms
y
inf
0.0ms
y
0

rewrite70.0ms (11.1%)

Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0919
01218
13218
25918
310418
417318
553118
0406218
0417018
Stop Event
iter-limit
iter-limit
node-limit
iter-limit
Counts
6 → 35
Calls
Call 1
Inputs
%3 = (*.f64 #s(literal -3/8 binary64) y)
x
y
#s(literal -3/8 binary64)
%3
(approx (- x (* 3/8 y)) %3)
(fma.f64 #s(literal -3/8 binary64) y x)
Outputs
%5 = (*.f64 #s(literal 3/8 binary64) y)
%7 = (neg.f64 y)
%10 = (*.f64 #s(literal -3/8 binary64) y)
%21 = (approx (+ (* -3/8 y) x) %10)
%26 = (-.f64 %5 x)
%28 = (fma.f64 #s(literal -3/8 binary64) y x)
%38 = (*.f64 x #s(literal 1 binary64))
%41 = (*.f64 %10 #s(literal 1 binary64))
x
y
#s(literal -3/8 binary64)
(*.f64 #s(literal -1 binary64) %5)
(*.f64 %7 #s(literal 3/8 binary64))
(*.f64 #s(literal 1 binary64) %10)
(*.f64 #s(literal 3/8 binary64) %7)
%10
(*.f64 y #s(literal -3/8 binary64))
(pow.f64 %10 #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 %10 #s(literal -1 binary64)))
(neg.f64 %5)
(*.f64 #s(literal 1 binary64) %21)
(pow.f64 %21 #s(literal 1 binary64))
%21
(/.f64 #s(literal 1 binary64) (pow.f64 %21 #s(literal -1 binary64)))
(*.f64 #s(literal -1 binary64) %26)
(*.f64 #s(literal 1 binary64) %28)
(pow.f64 %28 #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 %28 #s(literal -1 binary64)))
(neg.f64 %26)
(fma.f64 #s(literal -1 binary64) %5 x)
(fma.f64 %7 #s(literal 3/8 binary64) x)
(fma.f64 #s(literal 1 binary64) %10 x)
(fma.f64 #s(literal 3/8 binary64) %7 x)
(fma.f64 %10 #s(literal 1 binary64) %38)
%28
(fma.f64 y #s(literal -3/8 binary64) x)
(fma.f64 x #s(literal 1 binary64) %41)
(-.f64 %10 (neg.f64 x))
(-.f64 x %5)
(+.f64 %41 %38)
(+.f64 %38 %41)
(+.f64 %10 x)
(+.f64 x %10)

reconstruct3.0ms (0.5%)

Counts
45 → 14
Compiler

Compiled 45 to 62 computations (-37.8% saved)

eval1.0ms (0.2%)

Compiler

Compiled 11 to 26 computations (-136.4% saved)

prune-11.0ms (-1.8%)

Pruning

2 alts after pruning (0 fresh and 2 done)

PrunedKeptTotal
New11011
Fresh000
Picked022
Done000
Total11213
Accuracy
100.0%
Counts
13 → 2
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 #s(literal -3/8 binary64) y x)
51.1%
(approx (- x (* 3/8 y)) (*.f64 #s(literal -3/8 binary64) y))
Compiler

Compiled 2 to 5 computations (-150.0% saved)

regimes19.0ms (3.1%)

Accuracy

Total -0.0b remaining (-0.0%)

Threshold costs -0.0b (-0.0%)

0.0b0%
-0.0b-0.0%

Counts
1 → 1
2 → 1
Calls
Call 1
Inputs
(approx (- x (* 3/8 y)) (*.f64 #s(literal -3/8 binary64) y))
Outputs
(approx (- x (* 3/8 y)) (*.f64 #s(literal -3/8 binary64) y))
Call 2
Inputs
(approx (- x (* 3/8 y)) (*.f64 #s(literal -3/8 binary64) y))
(fma.f64 #s(literal -3/8 binary64) y x)
Outputs
(fma.f64 #s(literal -3/8 binary64) y x)
Calls

4 calls:

2.0ms
(*.f64 (/.f64 #s(literal 3 binary64) #s(literal 8 binary64)) y)
2.0ms
(-.f64 x (*.f64 (/.f64 #s(literal 3 binary64) #s(literal 8 binary64)) y))
2.0ms
y
2.0ms
x
Results
AccuracySegmentsBranch
51.1%1
y
51.1%1
x
51.1%1
(-.f64 x (*.f64 (/.f64 #s(literal 3 binary64) #s(literal 8 binary64)) y))
51.1%1
(*.f64 (/.f64 #s(literal 3 binary64) #s(literal 8 binary64)) y)
Compiler

Compiled 7 to 17 computations (-142.9% saved)

bsearch0.0ms (0.0%)

bsearch0.0ms (0.0%)

derivations23.0ms (3.7%)

Stop Event
done
Compiler

Compiled 2 to 5 computations (-150.0% saved)

preprocess10.0ms (1.6%)

Compiler

Compiled 3 to 12 computations (-300.0% saved)

end0.0ms (0.0%)

gc162ms (25.9%)

Allocations
AllocatedPercentPhase
241.3 MiB52.0%sample
107.8 MiB23.2%rewrite
36.8 MiB7.9%series
31.9 MiB6.9%preprocess
21.3 MiB4.6%regimes
11.2 MiB2.4%derivations
7.7 MiB1.7%reconstruct
2.9 MiB0.6%eval
2.6 MiB0.6%prune
0.3 MiB0.1%analyze
0.0 MiB0.0%bsearch
0.0 MiB0.0%start
0.0 MiB0.0%end
463.9 MiB100.0%total

Profiling

Loading profile data...