x1 * x2 * x3 * x4

Time bar (total: 868.0ms)

start0.0ms (0.0%)

Memory
0.0MiB live, 0.0MiB allocated; 0ms collecting garbage

analyze0.0ms (0.1%)

Memory
0.1MiB live, 0.1MiB allocated; 0ms collecting garbage
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0.0%0.0%0.0%100.0%0.0%0.0%0.0%0
100.0%0.0%0.0%100.0%0.0%0.0%0.0%1
Compiler

Compiled 39 to 27 computations (30.8% saved)

sample580.0ms (66.9%)

Memory
38.0MiB live, 261.7MiB allocated; 49ms collecting garbage
Samples
363.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 110.0ms
ival-mult!: 108.0ms (98.1% of total)
adjust: 2.0ms (1.8% of total)
Bogosity

preprocess55.0ms (6.4%)

Memory
-55.4MiB live, 27.3MiB allocated; 42ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
041109
1107109
2239109
3401109
4460109
Stop Event
saturated
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.4%
(*.f64 (*.f64 (*.f64 x1 x2) x3) x4)
Symmetry

(negabs x1)

(negabs x2)

(negabs x3)

(negabs x4)

(sort x1 x2)

(sort x1 x3)

(sort x1 x4)

(sort x2 x3)

(sort x2 x4)

(sort x3 x4)

Compiler

Compiled 14 to 14 computations (0.0% saved)

sample0.0ms (0.0%)

Memory
0.0MiB live, 0.0MiB allocated; 0ms collecting garbage
Calls
Call 1
Inputs
Outputs

series23.0ms (2.6%)

Memory
11.4MiB live, 11.4MiB allocated; 0ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01945
Stop Event
iter-limit
Counts
7 → 7
Calls
Call 1
Inputs
x1
x2
(*.f64 x1 x2)
x3
(*.f64 (*.f64 x1 x2) x3)
x4
(*.f64 (*.f64 (*.f64 x1 x2) x3) x4)
Outputs
#s(approx x1 x1)
#s(approx (* x1 x2) (*.f64 x1 x2))
#s(approx (* (* x1 x2) x3) (*.f64 x1 (*.f64 x2 x3)))
#s(approx (* (* (* x1 x2) x3) x4) (*.f64 x1 (*.f64 x2 (*.f64 x3 x4))))
#s(approx x2 x2)
#s(approx x3 x3)
#s(approx x4 x4)
Calls

12 calls:

TimeVariablePoint
3.0ms
x2
-inf
2.0ms
x1
-inf
2.0ms
x1
0
1.0ms
x2
inf
1.0ms
x1
inf

rewrite13.0ms (1.5%)

Memory
4.4MiB live, 4.4MiB allocated; 0ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0719
01019
11719
23919
37519
48319
08319
Stop Event
iter-limit
saturated
iter-limit
Counts
7 → 26
Calls
Call 1
Inputs
x1
x2
(*.f64 x1 x2)
x3
(*.f64 (*.f64 x1 x2) x3)
x4
(*.f64 (*.f64 (*.f64 x1 x2) x3) x4)
Outputs
x1
x2
(*.f64 x2 x1)
(*.f64 x1 x2)
x3
(*.f64 (*.f64 x3 x1) x2)
(*.f64 (*.f64 x3 x2) x1)
(*.f64 x3 (*.f64 x2 x1))
(*.f64 (*.f64 x2 x1) x3)
(*.f64 x2 (*.f64 x3 x1))
(*.f64 x1 (*.f64 x3 x2))
x4
(*.f64 (*.f64 x4 x2) (*.f64 x3 x1))
(*.f64 (*.f64 (*.f64 x4 x1) x2) x3)
(*.f64 (*.f64 x4 x1) (*.f64 x3 x2))
(*.f64 (*.f64 x3 x1) (*.f64 x4 x2))
(*.f64 (*.f64 (*.f64 x4 x3) x2) x1)
(*.f64 (*.f64 (*.f64 x4 x3) x1) x2)
(*.f64 (*.f64 x4 x3) (*.f64 x2 x1))
(*.f64 (*.f64 x3 x2) (*.f64 x4 x1))
(*.f64 x4 (*.f64 x3 (*.f64 x2 x1)))
(*.f64 (*.f64 x3 (*.f64 x2 x1)) x4)
(*.f64 x3 (*.f64 (*.f64 x4 x1) x2))
(*.f64 (*.f64 x2 x1) (*.f64 x4 x3))
(*.f64 x2 (*.f64 (*.f64 x4 x3) x1))
(*.f64 x1 (*.f64 (*.f64 x4 x3) x2))

eval2.0ms (0.2%)

Memory
1.9MiB live, 1.9MiB allocated; 0ms collecting garbage
Compiler

Compiled 215 to 68 computations (68.4% saved)

prune3.0ms (0.4%)

Memory
2.7MiB live, 2.7MiB allocated; 0ms collecting garbage
Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New22527
Fresh000
Picked101
Done-110
Total22628
Accuracy
100.0%
Counts
28 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.4%
(*.f64 (*.f64 (*.f64 x4 x3) x2) x1)
99.4%
(*.f64 (*.f64 (*.f64 x4 x3) x1) x2)
99.4%
(*.f64 (*.f64 (*.f64 x3 x2) x1) x4)
99.4%
(*.f64 (*.f64 (*.f64 x1 x2) x3) x4)
99.5%
(*.f64 (*.f64 x4 x2) (*.f64 x3 x1))
99.4%
(*.f64 (*.f64 x4 x1) (*.f64 x3 x2))
Compiler

Compiled 77 to 77 computations (0.0% saved)

sample0.0ms (0.0%)

Memory
0.0MiB live, 0.0MiB allocated; 0ms collecting garbage
Calls
Call 1
Inputs
Outputs

series25.0ms (2.9%)

Memory
15.1MiB live, 15.1MiB allocated; 0ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03595
Stop Event
iter-limit
Counts
17 → 13
Calls
Call 1
Inputs
x4
x2
(*.f64 x4 x2)
x3
x1
(*.f64 x3 x1)
(*.f64 (*.f64 x4 x2) (*.f64 x3 x1))
(*.f64 x4 x1)
(*.f64 x3 x2)
(*.f64 (*.f64 x4 x1) (*.f64 x3 x2))
(*.f64 (*.f64 x3 x2) x1)
(*.f64 (*.f64 (*.f64 x3 x2) x1) x4)
(*.f64 x4 x3)
(*.f64 (*.f64 x4 x3) x1)
(*.f64 (*.f64 (*.f64 x4 x3) x1) x2)
(*.f64 (*.f64 x4 x3) x2)
(*.f64 (*.f64 (*.f64 x4 x3) x2) x1)
Outputs
#s(approx x1 x1)
#s(approx (* x3 x1) (*.f64 x1 x3))
#s(approx (* (* x4 x2) (* x3 x1)) (*.f64 x1 (*.f64 x2 (*.f64 x3 x4))))
#s(approx (* x4 x1) (*.f64 x1 x4))
#s(approx (* (* x3 x2) x1) (*.f64 x1 (*.f64 x2 x3)))
#s(approx (* (* x4 x3) x1) (*.f64 x1 (*.f64 x3 x4)))
#s(approx x2 x2)
#s(approx (* x4 x2) (*.f64 x2 x4))
#s(approx (* x3 x2) (*.f64 x2 x3))
#s(approx (* (* x4 x3) x2) (*.f64 x2 (*.f64 x3 x4)))
#s(approx x3 x3)
#s(approx (* x4 x3) (*.f64 x3 x4))
#s(approx x4 x4)
Calls

12 calls:

TimeVariablePoint
5.0ms
x3
-inf
2.0ms
x3
inf
2.0ms
x4
-inf
2.0ms
x1
-inf
2.0ms
x2
-inf

rewrite11.0ms (1.3%)

Memory
2.8MiB live, 2.8MiB allocated; 0ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01769
03069
15869
28569
38669
08669
Stop Event
iter-limit
saturated
iter-limit
Counts
17 → 102
Calls
Call 1
Inputs
x4
x2
(*.f64 x4 x2)
x3
x1
(*.f64 x3 x1)
(*.f64 (*.f64 x4 x2) (*.f64 x3 x1))
(*.f64 x4 x1)
(*.f64 x3 x2)
(*.f64 (*.f64 x4 x1) (*.f64 x3 x2))
(*.f64 (*.f64 x3 x2) x1)
(*.f64 (*.f64 (*.f64 x3 x2) x1) x4)
(*.f64 x4 x3)
(*.f64 (*.f64 x4 x3) x1)
(*.f64 (*.f64 (*.f64 x4 x3) x1) x2)
(*.f64 (*.f64 x4 x3) x2)
(*.f64 (*.f64 (*.f64 x4 x3) x2) x1)
Outputs
x4
x2
(*.f64 x2 x4)
(*.f64 x4 x2)
x3
x1
(*.f64 x1 x3)
(*.f64 x3 x1)
(*.f64 (*.f64 (*.f64 x1 x2) x4) x3)
(*.f64 (*.f64 x1 x2) (*.f64 x3 x4))
(*.f64 (*.f64 (*.f64 x3 x4) x2) x1)
(*.f64 (*.f64 (*.f64 x3 x4) x1) x2)
(*.f64 (*.f64 x3 x4) (*.f64 x1 x2))
(*.f64 (*.f64 (*.f64 x3 x2) x1) x4)
(*.f64 (*.f64 x3 x2) (*.f64 x1 x4))
(*.f64 (*.f64 x1 x4) (*.f64 x3 x2))
(*.f64 (*.f64 x1 x3) (*.f64 x2 x4))
(*.f64 x1 (*.f64 (*.f64 x3 x4) x2))
(*.f64 x3 (*.f64 (*.f64 x1 x2) x4))
(*.f64 (*.f64 x2 x4) (*.f64 x1 x3))
(*.f64 x2 (*.f64 (*.f64 x3 x4) x1))
(*.f64 x4 (*.f64 (*.f64 x3 x2) x1))
(*.f64 x1 x4)
(*.f64 x4 x1)
(*.f64 x3 x2)
(*.f64 x2 x3)
(*.f64 (*.f64 (*.f64 x1 x2) x4) x3)
(*.f64 (*.f64 x1 x2) (*.f64 x3 x4))
(*.f64 (*.f64 (*.f64 x3 x4) x2) x1)
(*.f64 (*.f64 (*.f64 x3 x4) x1) x2)
(*.f64 (*.f64 x3 x4) (*.f64 x1 x2))
(*.f64 (*.f64 (*.f64 x3 x2) x1) x4)
(*.f64 (*.f64 x3 x2) (*.f64 x1 x4))
(*.f64 (*.f64 x1 x4) (*.f64 x3 x2))
(*.f64 (*.f64 x1 x3) (*.f64 x2 x4))
(*.f64 x1 (*.f64 (*.f64 x3 x4) x2))
(*.f64 x3 (*.f64 (*.f64 x1 x2) x4))
(*.f64 (*.f64 x2 x4) (*.f64 x1 x3))
(*.f64 x2 (*.f64 (*.f64 x3 x4) x1))
(*.f64 x4 (*.f64 (*.f64 x3 x2) x1))
(*.f64 (*.f64 x1 x2) x3)
(*.f64 (*.f64 x3 x2) x1)
(*.f64 (*.f64 x1 x3) x2)
(*.f64 x1 (*.f64 x3 x2))
(*.f64 x3 (*.f64 x1 x2))
(*.f64 x2 (*.f64 x1 x3))
(*.f64 (*.f64 (*.f64 x1 x2) x4) x3)
(*.f64 (*.f64 x1 x2) (*.f64 x3 x4))
(*.f64 (*.f64 (*.f64 x3 x4) x2) x1)
(*.f64 (*.f64 (*.f64 x3 x4) x1) x2)
(*.f64 (*.f64 x3 x4) (*.f64 x1 x2))
(*.f64 (*.f64 (*.f64 x3 x2) x1) x4)
(*.f64 (*.f64 x3 x2) (*.f64 x1 x4))
(*.f64 (*.f64 x1 x4) (*.f64 x3 x2))
(*.f64 (*.f64 x1 x3) (*.f64 x2 x4))
(*.f64 x1 (*.f64 (*.f64 x3 x4) x2))
(*.f64 x3 (*.f64 (*.f64 x1 x2) x4))
(*.f64 (*.f64 x2 x4) (*.f64 x1 x3))
(*.f64 x2 (*.f64 (*.f64 x3 x4) x1))
(*.f64 x4 (*.f64 (*.f64 x3 x2) x1))
(*.f64 x3 x4)
(*.f64 x4 x3)
(*.f64 (*.f64 x3 x4) x1)
(*.f64 (*.f64 x1 x4) x3)
(*.f64 (*.f64 x1 x3) x4)
(*.f64 x1 (*.f64 x3 x4))
(*.f64 x3 (*.f64 x1 x4))
(*.f64 x4 (*.f64 x1 x3))
(*.f64 (*.f64 (*.f64 x1 x2) x4) x3)
(*.f64 (*.f64 x1 x2) (*.f64 x3 x4))
(*.f64 (*.f64 (*.f64 x3 x4) x2) x1)
(*.f64 (*.f64 (*.f64 x3 x4) x1) x2)
(*.f64 (*.f64 x3 x4) (*.f64 x1 x2))
(*.f64 (*.f64 (*.f64 x3 x2) x1) x4)
(*.f64 (*.f64 x3 x2) (*.f64 x1 x4))
(*.f64 (*.f64 x1 x4) (*.f64 x3 x2))
(*.f64 (*.f64 x1 x3) (*.f64 x2 x4))
(*.f64 x1 (*.f64 (*.f64 x3 x4) x2))
(*.f64 x3 (*.f64 (*.f64 x1 x2) x4))
(*.f64 (*.f64 x2 x4) (*.f64 x1 x3))
(*.f64 x2 (*.f64 (*.f64 x3 x4) x1))
(*.f64 x4 (*.f64 (*.f64 x3 x2) x1))
(*.f64 (*.f64 x3 x4) x2)
(*.f64 (*.f64 x3 x2) x4)
(*.f64 x3 (*.f64 x2 x4))
(*.f64 (*.f64 x2 x4) x3)
(*.f64 x2 (*.f64 x3 x4))
(*.f64 x4 (*.f64 x3 x2))
(*.f64 (*.f64 (*.f64 x1 x2) x4) x3)
(*.f64 (*.f64 x1 x2) (*.f64 x3 x4))
(*.f64 (*.f64 (*.f64 x3 x4) x2) x1)
(*.f64 (*.f64 (*.f64 x3 x4) x1) x2)
(*.f64 (*.f64 x3 x4) (*.f64 x1 x2))
(*.f64 (*.f64 (*.f64 x3 x2) x1) x4)
(*.f64 (*.f64 x3 x2) (*.f64 x1 x4))
(*.f64 (*.f64 x1 x4) (*.f64 x3 x2))
(*.f64 (*.f64 x1 x3) (*.f64 x2 x4))
(*.f64 x1 (*.f64 (*.f64 x3 x4) x2))
(*.f64 x3 (*.f64 (*.f64 x1 x2) x4))
(*.f64 (*.f64 x2 x4) (*.f64 x1 x3))
(*.f64 x2 (*.f64 (*.f64 x3 x4) x1))
(*.f64 x4 (*.f64 (*.f64 x3 x2) x1))

eval4.0ms (0.4%)

Memory
4.4MiB live, 4.4MiB allocated; 0ms collecting garbage
Compiler

Compiled 570 to 150 computations (73.7% saved)

prune9.0ms (1.0%)

Memory
4.2MiB live, 4.2MiB allocated; 0ms collecting garbage
Pruning

7 alts after pruning (1 fresh and 6 done)

PrunedKeptTotal
New67168
Fresh000
Picked505
Done-561
Total67774
Accuracy
100.0%
Counts
74 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.4%
(*.f64 (*.f64 (*.f64 x4 x3) x2) x1)
99.4%
(*.f64 (*.f64 (*.f64 x4 x3) x1) x2)
99.4%
(*.f64 (*.f64 (*.f64 x3 x2) x1) x4)
99.5%
(*.f64 (*.f64 (*.f64 x1 x3) x4) x2)
99.4%
(*.f64 (*.f64 (*.f64 x1 x2) x3) x4)
99.5%
(*.f64 (*.f64 x4 x2) (*.f64 x3 x1))
99.4%
(*.f64 (*.f64 x4 x1) (*.f64 x3 x2))
Compiler

Compiled 49 to 49 computations (0.0% saved)

sample0.0ms (0.0%)

Memory
0.0MiB live, 0.0MiB allocated; 0ms collecting garbage
Calls
Call 1
Inputs
Outputs

series12.0ms (1.4%)

Memory
7.5MiB live, 7.5MiB allocated; 0ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01845
Stop Event
iter-limit
Counts
7 → 7
Calls
Call 1
Inputs
x1
x3
(*.f64 x1 x3)
x4
(*.f64 (*.f64 x1 x3) x4)
x2
(*.f64 (*.f64 (*.f64 x1 x3) x4) x2)
Outputs
#s(approx x1 x1)
#s(approx (* x1 x3) (*.f64 x1 x3))
#s(approx (* (* x1 x3) x4) (*.f64 x1 (*.f64 x3 x4)))
#s(approx (* (* (* x1 x3) x4) x2) (*.f64 x1 (*.f64 x2 (*.f64 x3 x4))))
#s(approx x2 x2)
#s(approx x3 x3)
#s(approx x4 x4)
Calls

12 calls:

TimeVariablePoint
1.0ms
x3
-inf
1.0ms
x1
-inf
1.0ms
x3
inf
1.0ms
x4
-inf
1.0ms
x1
inf

rewrite10.0ms (1.1%)

Memory
1.7MiB live, 1.7MiB allocated; 0ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0719
01019
11719
23919
37519
48319
08319
Stop Event
iter-limit
saturated
iter-limit
Counts
7 → 26
Calls
Call 1
Inputs
x1
x3
(*.f64 x1 x3)
x4
(*.f64 (*.f64 x1 x3) x4)
x2
(*.f64 (*.f64 (*.f64 x1 x3) x4) x2)
Outputs
x1
x3
(*.f64 x3 x1)
(*.f64 x1 x3)
x4
(*.f64 (*.f64 x4 x1) x3)
(*.f64 (*.f64 x4 x3) x1)
(*.f64 x4 (*.f64 x3 x1))
(*.f64 (*.f64 x3 x1) x4)
(*.f64 x3 (*.f64 x4 x1))
(*.f64 x1 (*.f64 x4 x3))
x2
(*.f64 (*.f64 x2 x3) (*.f64 x4 x1))
(*.f64 (*.f64 (*.f64 x2 x1) x3) x4)
(*.f64 (*.f64 x2 x1) (*.f64 x4 x3))
(*.f64 (*.f64 x4 x1) (*.f64 x2 x3))
(*.f64 (*.f64 (*.f64 x2 x4) x3) x1)
(*.f64 (*.f64 (*.f64 x2 x4) x1) x3)
(*.f64 (*.f64 x2 x4) (*.f64 x3 x1))
(*.f64 (*.f64 x4 x3) (*.f64 x2 x1))
(*.f64 x2 (*.f64 x4 (*.f64 x3 x1)))
(*.f64 (*.f64 x4 (*.f64 x3 x1)) x2)
(*.f64 x4 (*.f64 (*.f64 x2 x1) x3))
(*.f64 (*.f64 x3 x1) (*.f64 x2 x4))
(*.f64 x3 (*.f64 (*.f64 x2 x4) x1))
(*.f64 x1 (*.f64 (*.f64 x2 x4) x3))

eval2.0ms (0.2%)

Memory
1.8MiB live, 1.8MiB allocated; 0ms collecting garbage
Compiler

Compiled 215 to 67 computations (68.8% saved)

prune3.0ms (0.4%)

Memory
2.4MiB live, 2.4MiB allocated; 0ms collecting garbage
Pruning

7 alts after pruning (0 fresh and 7 done)

PrunedKeptTotal
New27027
Fresh000
Picked101
Done-176
Total27734
Accuracy
100.0%
Counts
34 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.4%
(*.f64 (*.f64 (*.f64 x4 x3) x2) x1)
99.4%
(*.f64 (*.f64 (*.f64 x4 x3) x1) x2)
99.4%
(*.f64 (*.f64 (*.f64 x3 x2) x1) x4)
99.5%
(*.f64 (*.f64 (*.f64 x1 x3) x4) x2)
99.4%
(*.f64 (*.f64 (*.f64 x1 x2) x3) x4)
99.5%
(*.f64 (*.f64 x4 x2) (*.f64 x3 x1))
99.4%
(*.f64 (*.f64 x4 x1) (*.f64 x3 x2))
Compiler

Compiled 49 to 49 computations (0.0% saved)

regimes36.0ms (4.1%)

Memory
-51.5MiB live, 28.2MiB allocated; 7ms collecting garbage
Counts
1 → 1
7 → 1
Calls
Call 1
Inputs
(*.f64 (*.f64 x4 x1) (*.f64 x3 x2))
Outputs
(*.f64 (*.f64 x4 x1) (*.f64 x3 x2))
Call 2
Inputs
(*.f64 (*.f64 x4 x1) (*.f64 x3 x2))
(*.f64 (*.f64 x4 x2) (*.f64 x3 x1))
(*.f64 (*.f64 (*.f64 x1 x2) x3) x4)
(*.f64 (*.f64 (*.f64 x1 x3) x4) x2)
(*.f64 (*.f64 (*.f64 x3 x2) x1) x4)
(*.f64 (*.f64 (*.f64 x4 x3) x1) x2)
(*.f64 (*.f64 (*.f64 x4 x3) x2) x1)
Outputs
(*.f64 (*.f64 x4 x2) (*.f64 x3 x1))
Calls

14 calls:

13.0ms
(*.f64 (*.f64 (*.f64 x1 x2) x3) x4)
2.0ms
(*.f64 (*.f64 x1 x2) x3)
2.0ms
(*.f64 x1 x2)
2.0ms
x4
2.0ms
x1
Results
AccuracySegmentsBranch
99.4%1(*.f64 x1 x2)
99.4%1(*.f64 (*.f64 x1 x2) x3)
99.4%1(*.f64 (*.f64 (*.f64 x1 x2) x3) x4)
99.4%1x1
99.4%1x2
99.4%1x3
99.4%1x4
99.5%1(*.f64 x1 x2)
99.5%1(*.f64 (*.f64 x1 x2) x3)
99.5%1(*.f64 (*.f64 (*.f64 x1 x2) x3) x4)
99.5%1x1
99.5%1x2
99.5%1x3
99.5%1x4
Compiler

Compiled 87 to 91 computations (-4.6% saved)

derivations3.0ms (0.4%)

Memory
0.7MiB live, 0.7MiB allocated; 0ms collecting garbage
Stop Event
done
Compiler

Compiled 14 to 10 computations (28.6% saved)

preprocess76.0ms (8.8%)

Memory
-1.0MiB live, 79.0MiB allocated; 1ms collecting garbage
Symmetry

(sort x3 x4)

Compiler

Compiled 355 to 343 computations (3.4% saved)

end0.0ms (0.0%)

Memory
0.0MiB live, 0.0MiB allocated; 0ms collecting garbage

Profiling

Loading profile data...