Lanczos kernel

Time bar (total: 1.9s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated

analyze32.0ms (1.7%)

Memory
-39.6MiB live, 47.8MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%0%100%0%0%0%0
0%0%0%100%0%0%0%1
50%0%0%100%0%0%0%2
50%0%0%100%0%0%0%3
75%0%0%100%0%0%0%4
75%0%0%100%0%0%0%5
87.5%0%0%100%0%0%0%6
87.5%0%0%100%0%0%0%7
93.7%0%0%100%0%0%0%8
93.7%0%0%100%0%0%0%9
96.9%0%0%100%0%0%0%10
96.9%0%0%100%0%0%0%11
98.4%0%0%100%0%0%0%12
Compiler

Compiled 37 to 21 computations (43.2% saved)

sample1.3s (69%)

Memory
11.3MiB live, 2 106.7MiB allocated
Samples
1.0s8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 801.0ms
ival-mult: 151.0ms (18.9% of total)
ival-sin: 131.0ms (16.4% of total)
const: 125.0ms (15.6% of total)
ival-sinu: 125.0ms (15.6% of total)
ival-div: 108.0ms (13.5% of total)
ival-<=: 92.0ms (11.5% of total)
ival-pi: 36.0ms (4.5% of total)
ival-and: 22.0ms (2.7% of total)
exact: 8.0ms (1% of total)
ival-assert: 3.0ms (0.4% of total)
Bogosity

explain133.0ms (6.8%)

Memory
-13.2MiB live, 220.2MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
20-2(0.9282422661781311 3.2611074447631836)(sin.f32 (*.f32 (*.f32 x (PI.f32)) tau))
00-0-(PI.f32)
00-0-(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
00-0-(*.f32 (*.f32 x (PI.f32)) tau)
00-0-(*.f32 x (PI.f32))
00-0-(sin.f32 (*.f32 x (PI.f32)))
00-0-(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
00-0-tau
00-0-(/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau))
00-0-x
Confusion
Predicted +Predicted -
+03
-0253
Precision
0/0
Recall
0.0
Confusion?
Predicted +Predicted MaybePredicted -
+003
-00253
Precision?
0/0
Recall?
0.0
Freqs
test
numberfreq
0256
Total Confusion?
Predicted +Predicted MaybePredicted -
+001
-000
Precision?
0/0
Recall?
0.0
Samples
56.0ms512×0valid
Compiler

Compiled 211 to 44 computations (79.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 39.0ms
ival-mult: 11.0ms (28.1% of total)
ival-div: 9.0ms (23% of total)
ival-sinu: 9.0ms (23% of total)
ival-sin: 7.0ms (17.9% of total)
ival-pi: 2.0ms (5.1% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess3.0ms (0.1%)

Memory
5.5MiB live, 5.5MiB allocated
Algorithm
egg-herbie
Calls
Call 1
Inputs
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
Outputs
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
Compiler

Compiled 21 to 10 computations (52.4% saved)

eval0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune0.0ms (0%)

Memory
1.0MiB live, 1.0MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
97.6%
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
Compiler

Compiled 21 to 10 computations (52.4% saved)

simplify0.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated
Algorithm
egg-herbie
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f32 (*.f32 x (PI.f32)) tau)
cost-diff0
(sin.f32 (*.f32 (*.f32 x (PI.f32)) tau))
cost-diff0
(/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau))
cost-diff0
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
Calls
Call 1
Inputs
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau))
(sin.f32 (*.f32 (*.f32 x (PI.f32)) tau))
(*.f32 (*.f32 x (PI.f32)) tau)
(*.f32 x (PI.f32))
x
(PI.f32)
tau
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
(sin.f32 (*.f32 x (PI.f32)))
Outputs
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau))
(sin.f32 (*.f32 (*.f32 x (PI.f32)) tau))
(*.f32 (*.f32 x (PI.f32)) tau)
(*.f32 x (PI.f32))
x
(PI.f32)
tau
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
(sin.f32 (*.f32 x (PI.f32)))

localize34.0ms (1.8%)

Memory
14.6MiB live, 52.6MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.28671384254663357
(sin.f32 (*.f32 x (PI.f32)))
accuracy0.34279252930532605
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
accuracy0.44999734406783104
(sin.f32 (*.f32 (*.f32 x (PI.f32)) tau))
accuracy0.46587758791597816
(/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau))
Samples
27.0ms256×0valid
Compiler

Compiled 126 to 22 computations (82.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 17.0ms
ival-mult: 4.0ms (23.9% of total)
ival-sinu: 4.0ms (23.9% of total)
ival-sin: 4.0ms (23.9% of total)
ival-div: 3.0ms (18% of total)
ival-pi: 1.0ms (6% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series30.0ms (1.6%)

Memory
9.1MiB live, 52.7MiB allocated
Counts
6 → 31
Calls
Call 1
Inputs
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau))
(sin.f32 (*.f32 (*.f32 x (PI.f32)) tau))
(*.f32 (*.f32 x (PI.f32)) tau)
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
(sin.f32 (*.f32 x (PI.f32)))
Outputs
1
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (* -1/6 (pow (PI) 2)))))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (+ (* -1/6 (pow (PI) 2)) (* (pow x 2) (+ (* 1/120 (* (pow tau 4) (pow (PI) 4))) (+ (* 1/120 (pow (PI) 4)) (* 1/36 (* (pow tau 2) (pow (PI) 4))))))))))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (+ (* -1/6 (pow (PI) 2)) (* (pow x 2) (+ (* 1/120 (* (pow tau 4) (pow (PI) 4))) (+ (* 1/120 (pow (PI) 4)) (+ (* 1/36 (* (pow tau 2) (pow (PI) 4))) (* (pow x 2) (+ (* -1/720 (* (pow tau 2) (pow (PI) 6))) (+ (* -1/720 (* (pow tau 4) (pow (PI) 6))) (+ (* -1/5040 (* (pow tau 6) (pow (PI) 6))) (* -1/5040 (pow (PI) 6))))))))))))))
(+ 1 (* -1/6 (* (pow tau 2) (* (pow x 2) (pow (PI) 2)))))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (* 1/120 (* (pow tau 4) (* (pow x 2) (pow (PI) 4)))))))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (* (pow x 2) (+ (* -1/5040 (* (pow tau 6) (* (pow x 2) (pow (PI) 6)))) (* 1/120 (* (pow tau 4) (pow (PI) 4))))))))
(* tau (* x (PI)))
(* x (+ (* -1/6 (* (pow tau 3) (* (pow x 2) (pow (PI) 3)))) (* tau (PI))))
(* x (+ (* tau (PI)) (* (pow x 2) (+ (* -1/6 (* (pow tau 3) (pow (PI) 3))) (* 1/120 (* (pow tau 5) (* (pow x 2) (pow (PI) 5))))))))
(* x (+ (* tau (PI)) (* (pow x 2) (+ (* -1/6 (* (pow tau 3) (pow (PI) 3))) (* (pow x 2) (+ (* -1/5040 (* (pow tau 7) (* (pow x 2) (pow (PI) 7)))) (* 1/120 (* (pow tau 5) (pow (PI) 5)))))))))
(+ 1 (* -1/6 (* (pow x 2) (pow (PI) 2))))
(+ 1 (* (pow x 2) (+ (* -1/6 (pow (PI) 2)) (* 1/120 (* (pow x 2) (pow (PI) 4))))))
(+ 1 (* (pow x 2) (+ (* -1/6 (pow (PI) 2)) (* (pow x 2) (+ (* -1/5040 (* (pow x 2) (pow (PI) 6))) (* 1/120 (pow (PI) 4)))))))
(* x (PI))
(* x (+ (PI) (* -1/6 (* (pow x 2) (pow (PI) 3)))))
(* x (+ (PI) (* (pow x 2) (+ (* -1/6 (pow (PI) 3)) (* 1/120 (* (pow x 2) (pow (PI) 5)))))))
(* x (+ (PI) (* (pow x 2) (+ (* -1/6 (pow (PI) 3)) (* (pow x 2) (+ (* -1/5040 (* (pow x 2) (pow (PI) 7))) (* 1/120 (pow (PI) 5))))))))
(/ (* (sin (* tau (* x (PI)))) (sin (* x (PI)))) (* tau (* (pow x 2) (pow (PI) 2))))
(/ (sin (* tau (* x (PI)))) (* tau (* x (PI))))
(sin (* tau (* x (PI))))
(/ (sin (* x (PI))) (* x (PI)))
(sin (* x (PI)))
(+ (* -1/6 (* (pow tau 2) (* x (* (PI) (sin (* x (PI))))))) (/ (sin (* x (PI))) (* x (PI))))
(+ (* (pow tau 2) (+ (* -1/6 (* x (* (PI) (sin (* x (PI)))))) (* 1/120 (* (pow tau 2) (* (pow x 3) (* (pow (PI) 3) (sin (* x (PI))))))))) (/ (sin (* x (PI))) (* x (PI))))
(+ (* (pow tau 2) (+ (* -1/6 (* x (* (PI) (sin (* x (PI)))))) (* (pow tau 2) (+ (* -1/5040 (* (pow tau 2) (* (pow x 5) (* (pow (PI) 5) (sin (* x (PI))))))) (* 1/120 (* (pow x 3) (* (pow (PI) 3) (sin (* x (PI)))))))))) (/ (sin (* x (PI))) (* x (PI))))
(+ 1 (* (pow tau 2) (+ (* -1/6 (* (pow x 2) (pow (PI) 2))) (* 1/120 (* (pow tau 2) (* (pow x 4) (pow (PI) 4)))))))
(+ 1 (* (pow tau 2) (+ (* -1/6 (* (pow x 2) (pow (PI) 2))) (* (pow tau 2) (+ (* -1/5040 (* (pow tau 2) (* (pow x 6) (pow (PI) 6)))) (* 1/120 (* (pow x 4) (pow (PI) 4))))))))
(* tau (+ (* -1/6 (* (pow tau 2) (* (pow x 3) (pow (PI) 3)))) (* x (PI))))
(* tau (+ (* x (PI)) (* (pow tau 2) (+ (* -1/6 (* (pow x 3) (pow (PI) 3))) (* 1/120 (* (pow tau 2) (* (pow x 5) (pow (PI) 5))))))))
(* tau (+ (* x (PI)) (* (pow tau 2) (+ (* -1/6 (* (pow x 3) (pow (PI) 3))) (* (pow tau 2) (+ (* -1/5040 (* (pow tau 2) (* (pow x 7) (pow (PI) 7)))) (* 1/120 (* (pow x 5) (pow (PI) 5)))))))))
Calls

6 calls:

TimeVariablePointExpression
10.0ms
x
@-inf
((* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* (* x (PI)) tau)) (* (* x (PI)) tau) (/ (sin (* x (PI))) (* x (PI))) (sin (* x (PI))))
7.0ms
tau
@-inf
((* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* (* x (PI)) tau)) (* (* x (PI)) tau) (/ (sin (* x (PI))) (* x (PI))) (sin (* x (PI))))
4.0ms
x
@inf
((* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* (* x (PI)) tau)) (* (* x (PI)) tau) (/ (sin (* x (PI))) (* x (PI))) (sin (* x (PI))))
4.0ms
x
@0
((* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* (* x (PI)) tau)) (* (* x (PI)) tau) (/ (sin (* x (PI))) (* x (PI))) (sin (* x (PI))))
3.0ms
tau
@inf
((* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* (* x (PI)) tau)) (* (* x (PI)) tau) (/ (sin (* x (PI))) (* x (PI))) (sin (* x (PI))))

simplify2.0ms (0.1%)

Memory
-35.3MiB live, 3.3MiB allocated
Algorithm
egg-herbie
Counts
31 → 6
Calls
Call 1
Inputs
1
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (* -1/6 (pow (PI) 2)))))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (+ (* -1/6 (pow (PI) 2)) (* (pow x 2) (+ (* 1/120 (* (pow tau 4) (pow (PI) 4))) (+ (* 1/120 (pow (PI) 4)) (* 1/36 (* (pow tau 2) (pow (PI) 4))))))))))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (+ (* -1/6 (pow (PI) 2)) (* (pow x 2) (+ (* 1/120 (* (pow tau 4) (pow (PI) 4))) (+ (* 1/120 (pow (PI) 4)) (+ (* 1/36 (* (pow tau 2) (pow (PI) 4))) (* (pow x 2) (+ (* -1/720 (* (pow tau 2) (pow (PI) 6))) (+ (* -1/720 (* (pow tau 4) (pow (PI) 6))) (+ (* -1/5040 (* (pow tau 6) (pow (PI) 6))) (* -1/5040 (pow (PI) 6))))))))))))))
(+ 1 (* -1/6 (* (pow tau 2) (* (pow x 2) (pow (PI) 2)))))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (* 1/120 (* (pow tau 4) (* (pow x 2) (pow (PI) 4)))))))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (* (pow x 2) (+ (* -1/5040 (* (pow tau 6) (* (pow x 2) (pow (PI) 6)))) (* 1/120 (* (pow tau 4) (pow (PI) 4))))))))
(* tau (* x (PI)))
(* x (+ (* -1/6 (* (pow tau 3) (* (pow x 2) (pow (PI) 3)))) (* tau (PI))))
(* x (+ (* tau (PI)) (* (pow x 2) (+ (* -1/6 (* (pow tau 3) (pow (PI) 3))) (* 1/120 (* (pow tau 5) (* (pow x 2) (pow (PI) 5))))))))
(* x (+ (* tau (PI)) (* (pow x 2) (+ (* -1/6 (* (pow tau 3) (pow (PI) 3))) (* (pow x 2) (+ (* -1/5040 (* (pow tau 7) (* (pow x 2) (pow (PI) 7)))) (* 1/120 (* (pow tau 5) (pow (PI) 5)))))))))
(+ 1 (* -1/6 (* (pow x 2) (pow (PI) 2))))
(+ 1 (* (pow x 2) (+ (* -1/6 (pow (PI) 2)) (* 1/120 (* (pow x 2) (pow (PI) 4))))))
(+ 1 (* (pow x 2) (+ (* -1/6 (pow (PI) 2)) (* (pow x 2) (+ (* -1/5040 (* (pow x 2) (pow (PI) 6))) (* 1/120 (pow (PI) 4)))))))
(* x (PI))
(* x (+ (PI) (* -1/6 (* (pow x 2) (pow (PI) 3)))))
(* x (+ (PI) (* (pow x 2) (+ (* -1/6 (pow (PI) 3)) (* 1/120 (* (pow x 2) (pow (PI) 5)))))))
(* x (+ (PI) (* (pow x 2) (+ (* -1/6 (pow (PI) 3)) (* (pow x 2) (+ (* -1/5040 (* (pow x 2) (pow (PI) 7))) (* 1/120 (pow (PI) 5))))))))
(/ (* (sin (* tau (* x (PI)))) (sin (* x (PI)))) (* tau (* (pow x 2) (pow (PI) 2))))
(/ (sin (* tau (* x (PI)))) (* tau (* x (PI))))
(sin (* tau (* x (PI))))
(/ (sin (* x (PI))) (* x (PI)))
(sin (* x (PI)))
(+ (* -1/6 (* (pow tau 2) (* x (* (PI) (sin (* x (PI))))))) (/ (sin (* x (PI))) (* x (PI))))
(+ (* (pow tau 2) (+ (* -1/6 (* x (* (PI) (sin (* x (PI)))))) (* 1/120 (* (pow tau 2) (* (pow x 3) (* (pow (PI) 3) (sin (* x (PI))))))))) (/ (sin (* x (PI))) (* x (PI))))
(+ (* (pow tau 2) (+ (* -1/6 (* x (* (PI) (sin (* x (PI)))))) (* (pow tau 2) (+ (* -1/5040 (* (pow tau 2) (* (pow x 5) (* (pow (PI) 5) (sin (* x (PI))))))) (* 1/120 (* (pow x 3) (* (pow (PI) 3) (sin (* x (PI)))))))))) (/ (sin (* x (PI))) (* x (PI))))
(+ 1 (* (pow tau 2) (+ (* -1/6 (* (pow x 2) (pow (PI) 2))) (* 1/120 (* (pow tau 2) (* (pow x 4) (pow (PI) 4)))))))
(+ 1 (* (pow tau 2) (+ (* -1/6 (* (pow x 2) (pow (PI) 2))) (* (pow tau 2) (+ (* -1/5040 (* (pow tau 2) (* (pow x 6) (pow (PI) 6)))) (* 1/120 (* (pow x 4) (pow (PI) 4))))))))
(* tau (+ (* -1/6 (* (pow tau 2) (* (pow x 3) (pow (PI) 3)))) (* x (PI))))
(* tau (+ (* x (PI)) (* (pow tau 2) (+ (* -1/6 (* (pow x 3) (pow (PI) 3))) (* 1/120 (* (pow tau 2) (* (pow x 5) (pow (PI) 5))))))))
(* tau (+ (* x (PI)) (* (pow tau 2) (+ (* -1/6 (* (pow x 3) (pow (PI) 3))) (* (pow tau 2) (+ (* -1/5040 (* (pow tau 2) (* (pow x 7) (pow (PI) 7)))) (* 1/120 (* (pow x 5) (pow (PI) 5)))))))))
Outputs
1
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (* -1/6 (pow (PI) 2)))))
(/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (+ (* -1/6 (pow (PI) 2)) (* (pow x 2) (+ (* 1/120 (* (pow tau 4) (pow (PI) 4))) (+ (* 1/120 (pow (PI) 4)) (* 1/36 (* (pow tau 2) (pow (PI) 4))))))))))
(sin.f32 (*.f32 (*.f32 x (PI.f32)) tau))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (+ (* -1/6 (pow (PI) 2)) (* (pow x 2) (+ (* 1/120 (* (pow tau 4) (pow (PI) 4))) (+ (* 1/120 (pow (PI) 4)) (+ (* 1/36 (* (pow tau 2) (pow (PI) 4))) (* (pow x 2) (+ (* -1/720 (* (pow tau 2) (pow (PI) 6))) (+ (* -1/720 (* (pow tau 4) (pow (PI) 6))) (+ (* -1/5040 (* (pow tau 6) (pow (PI) 6))) (* -1/5040 (pow (PI) 6))))))))))))))
(*.f32 (*.f32 x (PI.f32)) tau)
(+ 1 (* -1/6 (* (pow tau 2) (* (pow x 2) (pow (PI) 2)))))
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (* 1/120 (* (pow tau 4) (* (pow x 2) (pow (PI) 4)))))))
(sin.f32 (*.f32 x (PI.f32)))

rewrite0.0ms (0%)

Memory
1.7MiB live, 1.7MiB allocated
Counts
6 → 6
Calls
Call 1
Inputs
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau))
(sin.f32 (*.f32 (*.f32 x (PI.f32)) tau))
(*.f32 (*.f32 x (PI.f32)) tau)
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
(sin.f32 (*.f32 x (PI.f32)))
Outputs
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau))
(sin.f32 (*.f32 (*.f32 x (PI.f32)) tau))
(*.f32 (*.f32 x (PI.f32)) tau)
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
(sin.f32 (*.f32 x (PI.f32)))

eval1.0ms (0%)

Memory
3.9MiB live, 3.9MiB allocated
Compiler

Compiled 335 to 26 computations (92.2% saved)

prune3.0ms (0.2%)

Memory
11.6MiB live, 11.7MiB allocated
Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New8513
Fresh000
Picked011
Done000
Total8614
Accuracy
97.6%
Counts
14 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
97.6%
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
61.3%
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
18.8%
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
68.1%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)))
19.8%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (*.f32 (*.f32 x (PI.f32)) tau))
22.2%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)))
Compiler

Compiled 311 to 152 computations (51.1% saved)

simplify1.0ms (0.1%)

Memory
3.5MiB live, 3.5MiB allocated
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
cost-diff0
(sin.f32 (*.f32 x (PI.f32)))
cost-diff0
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
cost-diff0
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
cost-diff0
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
cost-diff0
(*.f32 x (PI.f32))
cost-diff0
(sin.f32 (*.f32 x (PI.f32)))
cost-diff0
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32))))
cost-diff0
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
cost-diff0
(*.f32 x (PI.f32))
cost-diff0
(*.f32 (*.f32 x (PI.f32)) tau)
cost-diff0
(sin.f32 (*.f32 (*.f32 x (PI.f32)) tau))
cost-diff0
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)))
cost-diff0
(PI.f32)
cost-diff0
(*.f32 x (PI.f32))
cost-diff0
(*.f32 (*.f32 x (PI.f32)) tau)
cost-diff0
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (*.f32 (*.f32 x (PI.f32)) tau))
cost-diff0
(*.f32 (*.f32 x (PI.f32)) tau)
cost-diff0
(sin.f32 (*.f32 (*.f32 x (PI.f32)) tau))
cost-diff0
(/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau))
cost-diff0
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)))
Calls
Call 1
Inputs
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)))
(/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau))
(sin.f32 (*.f32 (*.f32 x (PI.f32)) tau))
(*.f32 (*.f32 x (PI.f32)) tau)
(*.f32 x (PI.f32))
x
(PI.f32)
tau
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (*.f32 (*.f32 x (PI.f32)) tau))
(*.f32 (*.f32 x (PI.f32)) tau)
(*.f32 x (PI.f32))
x
(PI.f32)
tau
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)))
(sin.f32 (*.f32 (*.f32 x (PI.f32)) tau))
(*.f32 (*.f32 x (PI.f32)) tau)
(*.f32 x (PI.f32))
x
(PI.f32)
tau
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32))))
(sin.f32 (*.f32 x (PI.f32)))
(*.f32 x (PI.f32))
x
(PI.f32)
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
(sin.f32 (*.f32 x (PI.f32)))
(*.f32 x (PI.f32))
x
(PI.f32)
Outputs
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)))
(/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau))
(sin.f32 (*.f32 (*.f32 x (PI.f32)) tau))
(*.f32 (*.f32 x (PI.f32)) tau)
(*.f32 x (PI.f32))
x
(PI.f32)
tau
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (*.f32 (*.f32 x (PI.f32)) tau))
(*.f32 (*.f32 x (PI.f32)) tau)
(*.f32 x (PI.f32))
x
(PI.f32)
tau
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)))
(sin.f32 (*.f32 (*.f32 x (PI.f32)) tau))
(*.f32 (*.f32 x (PI.f32)) tau)
(*.f32 x (PI.f32))
x
(PI.f32)
tau
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32))))
(sin.f32 (*.f32 x (PI.f32)))
(*.f32 x (PI.f32))
x
(PI.f32)
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
(sin.f32 (*.f32 x (PI.f32)))
(*.f32 x (PI.f32))
x
(PI.f32)

localize43.0ms (2.2%)

Memory
11.4MiB live, 89.6MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.28515625
(*.f32 x (PI.f32))
accuracy0.28671384254663357
(sin.f32 (*.f32 x (PI.f32)))
accuracy0.34279252930532605
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
accuracy12.374395133840096
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
accuracy0.28515625
(*.f32 x (PI.f32))
accuracy0.28671384254663357
(sin.f32 (*.f32 x (PI.f32)))
accuracy0.34279252930532605
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
accuracy25.990046401687692
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32))))
accuracy0.25390625
(*.f32 (*.f32 x (PI.f32)) tau)
accuracy0.28515625
(*.f32 x (PI.f32))
accuracy0.44999734406783104
(sin.f32 (*.f32 (*.f32 x (PI.f32)) tau))
accuracy24.900554553995423
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)))
accuracy0.0
(PI.f32)
accuracy0.25390625
(*.f32 (*.f32 x (PI.f32)) tau)
accuracy0.28515625
(*.f32 x (PI.f32))
accuracy25.66986096384418
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (*.f32 (*.f32 x (PI.f32)) tau))
accuracy0.28515625
(*.f32 x (PI.f32))
accuracy0.44999734406783104
(sin.f32 (*.f32 (*.f32 x (PI.f32)) tau))
accuracy0.46587758791597816
(/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau))
accuracy10.170849304035743
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)))
Samples
30.0ms256×0valid
Compiler

Compiled 496 to 36 computations (92.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 19.0ms
ival-sin: 6.0ms (31.3% of total)
ival-mult: 5.0ms (26.1% of total)
ival-sinu: 4.0ms (20.9% of total)
ival-div: 3.0ms (15.7% of total)
ival-pi: 1.0ms (5.2% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series15.0ms (0.8%)

Memory
-21.1MiB live, 25.2MiB allocated
Counts
14 → 31
Calls
Call 1
Inputs
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)))
(/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau))
(sin.f32 (*.f32 (*.f32 x (PI.f32)) tau))
(*.f32 (*.f32 x (PI.f32)) tau)
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (*.f32 (*.f32 x (PI.f32)) tau))
(*.f32 x (PI.f32))
(PI.f32)
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)))
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32))))
(sin.f32 (*.f32 x (PI.f32)))
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
Outputs
1
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (* -1/6 (pow (PI) 2)))))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (+ (* -1/6 (pow (PI) 2)) (* (pow x 2) (+ (* 1/120 (* (pow tau 4) (pow (PI) 4))) (+ (* 1/120 (pow (PI) 4)) (* 1/36 (* (pow tau 2) (pow (PI) 4))))))))))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (+ (* -1/6 (pow (PI) 2)) (* (pow x 2) (+ (* 1/120 (* (pow tau 4) (pow (PI) 4))) (+ (* 1/120 (pow (PI) 4)) (+ (* 1/36 (* (pow tau 2) (pow (PI) 4))) (* (pow x 2) (+ (* -1/720 (* (pow tau 2) (pow (PI) 6))) (+ (* -1/720 (* (pow tau 4) (pow (PI) 6))) (+ (* -1/5040 (* (pow tau 6) (pow (PI) 6))) (* -1/5040 (pow (PI) 6))))))))))))))
(+ 1 (* -1/6 (* (pow tau 2) (* (pow x 2) (pow (PI) 2)))))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (* 1/120 (* (pow tau 4) (* (pow x 2) (pow (PI) 4)))))))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (* (pow x 2) (+ (* -1/5040 (* (pow tau 6) (* (pow x 2) (pow (PI) 6)))) (* 1/120 (* (pow tau 4) (pow (PI) 4))))))))
(* tau (* x (PI)))
(* x (+ (* -1/6 (* (pow tau 3) (* (pow x 2) (pow (PI) 3)))) (* tau (PI))))
(* x (+ (* tau (PI)) (* (pow x 2) (+ (* -1/6 (* (pow tau 3) (pow (PI) 3))) (* 1/120 (* (pow tau 5) (* (pow x 2) (pow (PI) 5))))))))
(* x (+ (* tau (PI)) (* (pow x 2) (+ (* -1/6 (* (pow tau 3) (pow (PI) 3))) (* (pow x 2) (+ (* -1/5040 (* (pow tau 7) (* (pow x 2) (pow (PI) 7)))) (* 1/120 (* (pow tau 5) (pow (PI) 5)))))))))
(* x (PI))
(* x (+ (PI) (* -1/6 (* (pow x 2) (pow (PI) 3)))))
(* x (+ (PI) (* (pow x 2) (+ (* -1/6 (pow (PI) 3)) (* 1/120 (* (pow x 2) (pow (PI) 5)))))))
(* x (+ (PI) (* (pow x 2) (+ (* -1/6 (pow (PI) 3)) (* (pow x 2) (+ (* -1/5040 (* (pow x 2) (pow (PI) 7))) (* 1/120 (pow (PI) 5))))))))
(+ 1 (* -1/6 (* (pow x 2) (pow (PI) 2))))
(+ 1 (* (pow x 2) (+ (* -1/6 (pow (PI) 2)) (* 1/120 (* (pow x 2) (pow (PI) 4))))))
(+ 1 (* (pow x 2) (+ (* -1/6 (pow (PI) 2)) (* (pow x 2) (+ (* -1/5040 (* (pow x 2) (pow (PI) 6))) (* 1/120 (pow (PI) 4)))))))
(/ (* (sin (* tau (* x (PI)))) (sin (* x (PI)))) (* tau (* (pow x 2) (pow (PI) 2))))
(/ (sin (* tau (* x (PI)))) (* tau (* x (PI))))
(sin (* tau (* x (PI))))
(sin (* x (PI)))
(/ (sin (* x (PI))) (* x (PI)))
(+ (* -1/6 (* (pow tau 2) (* x (* (PI) (sin (* x (PI))))))) (/ (sin (* x (PI))) (* x (PI))))
(+ (* (pow tau 2) (+ (* -1/6 (* x (* (PI) (sin (* x (PI)))))) (* 1/120 (* (pow tau 2) (* (pow x 3) (* (pow (PI) 3) (sin (* x (PI))))))))) (/ (sin (* x (PI))) (* x (PI))))
(+ (* (pow tau 2) (+ (* -1/6 (* x (* (PI) (sin (* x (PI)))))) (* (pow tau 2) (+ (* -1/5040 (* (pow tau 2) (* (pow x 5) (* (pow (PI) 5) (sin (* x (PI))))))) (* 1/120 (* (pow x 3) (* (pow (PI) 3) (sin (* x (PI)))))))))) (/ (sin (* x (PI))) (* x (PI))))
(+ 1 (* (pow tau 2) (+ (* -1/6 (* (pow x 2) (pow (PI) 2))) (* 1/120 (* (pow tau 2) (* (pow x 4) (pow (PI) 4)))))))
(+ 1 (* (pow tau 2) (+ (* -1/6 (* (pow x 2) (pow (PI) 2))) (* (pow tau 2) (+ (* -1/5040 (* (pow tau 2) (* (pow x 6) (pow (PI) 6)))) (* 1/120 (* (pow x 4) (pow (PI) 4))))))))
(* tau (+ (* -1/6 (* (pow tau 2) (* (pow x 3) (pow (PI) 3)))) (* x (PI))))
(* tau (+ (* x (PI)) (* (pow tau 2) (+ (* -1/6 (* (pow x 3) (pow (PI) 3))) (* 1/120 (* (pow tau 2) (* (pow x 5) (pow (PI) 5))))))))
(* tau (+ (* x (PI)) (* (pow tau 2) (+ (* -1/6 (* (pow x 3) (pow (PI) 3))) (* (pow tau 2) (+ (* -1/5040 (* (pow tau 2) (* (pow x 7) (pow (PI) 7)))) (* 1/120 (* (pow x 5) (pow (PI) 5)))))))))
Calls

6 calls:

TimeVariablePointExpression
6.0ms
x
@-inf
((* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* (* x (PI)) tau)) (* (* x (PI)) tau) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (* x (PI)) (PI) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* x (PI))) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI))))
2.0ms
tau
@-inf
((* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* (* x (PI)) tau)) (* (* x (PI)) tau) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (* x (PI)) (PI) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* x (PI))) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI))))
2.0ms
x
@inf
((* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* (* x (PI)) tau)) (* (* x (PI)) tau) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (* x (PI)) (PI) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* x (PI))) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI))))
2.0ms
tau
@inf
((* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* (* x (PI)) tau)) (* (* x (PI)) tau) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (* x (PI)) (PI) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* x (PI))) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI))))
1.0ms
x
@0
((* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* (* x (PI)) tau)) (* (* x (PI)) tau) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (* x (PI)) (PI) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* x (PI))) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI))))

simplify1.0ms (0.1%)

Memory
1.8MiB live, 1.8MiB allocated
Algorithm
egg-herbie
Counts
31 → 14
Calls
Call 1
Inputs
1
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (* -1/6 (pow (PI) 2)))))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (+ (* -1/6 (pow (PI) 2)) (* (pow x 2) (+ (* 1/120 (* (pow tau 4) (pow (PI) 4))) (+ (* 1/120 (pow (PI) 4)) (* 1/36 (* (pow tau 2) (pow (PI) 4))))))))))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (+ (* -1/6 (pow (PI) 2)) (* (pow x 2) (+ (* 1/120 (* (pow tau 4) (pow (PI) 4))) (+ (* 1/120 (pow (PI) 4)) (+ (* 1/36 (* (pow tau 2) (pow (PI) 4))) (* (pow x 2) (+ (* -1/720 (* (pow tau 2) (pow (PI) 6))) (+ (* -1/720 (* (pow tau 4) (pow (PI) 6))) (+ (* -1/5040 (* (pow tau 6) (pow (PI) 6))) (* -1/5040 (pow (PI) 6))))))))))))))
(+ 1 (* -1/6 (* (pow tau 2) (* (pow x 2) (pow (PI) 2)))))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (* 1/120 (* (pow tau 4) (* (pow x 2) (pow (PI) 4)))))))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (* (pow x 2) (+ (* -1/5040 (* (pow tau 6) (* (pow x 2) (pow (PI) 6)))) (* 1/120 (* (pow tau 4) (pow (PI) 4))))))))
(* tau (* x (PI)))
(* x (+ (* -1/6 (* (pow tau 3) (* (pow x 2) (pow (PI) 3)))) (* tau (PI))))
(* x (+ (* tau (PI)) (* (pow x 2) (+ (* -1/6 (* (pow tau 3) (pow (PI) 3))) (* 1/120 (* (pow tau 5) (* (pow x 2) (pow (PI) 5))))))))
(* x (+ (* tau (PI)) (* (pow x 2) (+ (* -1/6 (* (pow tau 3) (pow (PI) 3))) (* (pow x 2) (+ (* -1/5040 (* (pow tau 7) (* (pow x 2) (pow (PI) 7)))) (* 1/120 (* (pow tau 5) (pow (PI) 5)))))))))
(* x (PI))
(* x (+ (PI) (* -1/6 (* (pow x 2) (pow (PI) 3)))))
(* x (+ (PI) (* (pow x 2) (+ (* -1/6 (pow (PI) 3)) (* 1/120 (* (pow x 2) (pow (PI) 5)))))))
(* x (+ (PI) (* (pow x 2) (+ (* -1/6 (pow (PI) 3)) (* (pow x 2) (+ (* -1/5040 (* (pow x 2) (pow (PI) 7))) (* 1/120 (pow (PI) 5))))))))
(+ 1 (* -1/6 (* (pow x 2) (pow (PI) 2))))
(+ 1 (* (pow x 2) (+ (* -1/6 (pow (PI) 2)) (* 1/120 (* (pow x 2) (pow (PI) 4))))))
(+ 1 (* (pow x 2) (+ (* -1/6 (pow (PI) 2)) (* (pow x 2) (+ (* -1/5040 (* (pow x 2) (pow (PI) 6))) (* 1/120 (pow (PI) 4)))))))
(/ (* (sin (* tau (* x (PI)))) (sin (* x (PI)))) (* tau (* (pow x 2) (pow (PI) 2))))
(/ (sin (* tau (* x (PI)))) (* tau (* x (PI))))
(sin (* tau (* x (PI))))
(sin (* x (PI)))
(/ (sin (* x (PI))) (* x (PI)))
(+ (* -1/6 (* (pow tau 2) (* x (* (PI) (sin (* x (PI))))))) (/ (sin (* x (PI))) (* x (PI))))
(+ (* (pow tau 2) (+ (* -1/6 (* x (* (PI) (sin (* x (PI)))))) (* 1/120 (* (pow tau 2) (* (pow x 3) (* (pow (PI) 3) (sin (* x (PI))))))))) (/ (sin (* x (PI))) (* x (PI))))
(+ (* (pow tau 2) (+ (* -1/6 (* x (* (PI) (sin (* x (PI)))))) (* (pow tau 2) (+ (* -1/5040 (* (pow tau 2) (* (pow x 5) (* (pow (PI) 5) (sin (* x (PI))))))) (* 1/120 (* (pow x 3) (* (pow (PI) 3) (sin (* x (PI)))))))))) (/ (sin (* x (PI))) (* x (PI))))
(+ 1 (* (pow tau 2) (+ (* -1/6 (* (pow x 2) (pow (PI) 2))) (* 1/120 (* (pow tau 2) (* (pow x 4) (pow (PI) 4)))))))
(+ 1 (* (pow tau 2) (+ (* -1/6 (* (pow x 2) (pow (PI) 2))) (* (pow tau 2) (+ (* -1/5040 (* (pow tau 2) (* (pow x 6) (pow (PI) 6)))) (* 1/120 (* (pow x 4) (pow (PI) 4))))))))
(* tau (+ (* -1/6 (* (pow tau 2) (* (pow x 3) (pow (PI) 3)))) (* x (PI))))
(* tau (+ (* x (PI)) (* (pow tau 2) (+ (* -1/6 (* (pow x 3) (pow (PI) 3))) (* 1/120 (* (pow tau 2) (* (pow x 5) (pow (PI) 5))))))))
(* tau (+ (* x (PI)) (* (pow tau 2) (+ (* -1/6 (* (pow x 3) (pow (PI) 3))) (* (pow tau 2) (+ (* -1/5040 (* (pow tau 2) (* (pow x 7) (pow (PI) 7)))) (* 1/120 (* (pow x 5) (pow (PI) 5)))))))))
Outputs
1
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (* -1/6 (pow (PI) 2)))))
(/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (+ (* -1/6 (pow (PI) 2)) (* (pow x 2) (+ (* 1/120 (* (pow tau 4) (pow (PI) 4))) (+ (* 1/120 (pow (PI) 4)) (* 1/36 (* (pow tau 2) (pow (PI) 4))))))))))
(sin.f32 (*.f32 (*.f32 x (PI.f32)) tau))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (+ (* -1/6 (pow (PI) 2)) (* (pow x 2) (+ (* 1/120 (* (pow tau 4) (pow (PI) 4))) (+ (* 1/120 (pow (PI) 4)) (+ (* 1/36 (* (pow tau 2) (pow (PI) 4))) (* (pow x 2) (+ (* -1/720 (* (pow tau 2) (pow (PI) 6))) (+ (* -1/720 (* (pow tau 4) (pow (PI) 6))) (+ (* -1/5040 (* (pow tau 6) (pow (PI) 6))) (* -1/5040 (pow (PI) 6))))))))))))))
(*.f32 (*.f32 x (PI.f32)) tau)
(+ 1 (* -1/6 (* (pow tau 2) (* (pow x 2) (pow (PI) 2)))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (*.f32 (*.f32 x (PI.f32)) tau))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (* 1/120 (* (pow tau 4) (* (pow x 2) (pow (PI) 4)))))))
(*.f32 x (PI.f32))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (* (pow x 2) (+ (* -1/5040 (* (pow tau 6) (* (pow x 2) (pow (PI) 6)))) (* 1/120 (* (pow tau 4) (pow (PI) 4))))))))
(PI.f32)
(* tau (* x (PI)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)))
(* x (+ (* -1/6 (* (pow tau 3) (* (pow x 2) (pow (PI) 3)))) (* tau (PI))))
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
(* x (+ (* tau (PI)) (* (pow x 2) (+ (* -1/6 (* (pow tau 3) (pow (PI) 3))) (* 1/120 (* (pow tau 5) (* (pow x 2) (pow (PI) 5))))))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32))))
(* x (+ (* tau (PI)) (* (pow x 2) (+ (* -1/6 (* (pow tau 3) (pow (PI) 3))) (* (pow x 2) (+ (* -1/5040 (* (pow tau 7) (* (pow x 2) (pow (PI) 7)))) (* 1/120 (* (pow tau 5) (pow (PI) 5)))))))))
(sin.f32 (*.f32 x (PI.f32)))
(* x (PI))
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
(* x (+ (PI) (* -1/6 (* (pow x 2) (pow (PI) 3)))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
(* x (+ (PI) (* (pow x 2) (+ (* -1/6 (pow (PI) 3)) (* 1/120 (* (pow x 2) (pow (PI) 5)))))))
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))

rewrite1.0ms (0.1%)

Memory
3.4MiB live, 3.4MiB allocated
Counts
14 → 14
Calls
Call 1
Inputs
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)))
(/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau))
(sin.f32 (*.f32 (*.f32 x (PI.f32)) tau))
(*.f32 (*.f32 x (PI.f32)) tau)
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (*.f32 (*.f32 x (PI.f32)) tau))
(*.f32 x (PI.f32))
(PI.f32)
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)))
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32))))
(sin.f32 (*.f32 x (PI.f32)))
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
Outputs
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)))
(/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau))
(sin.f32 (*.f32 (*.f32 x (PI.f32)) tau))
(*.f32 (*.f32 x (PI.f32)) tau)
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (*.f32 (*.f32 x (PI.f32)) tau))
(*.f32 x (PI.f32))
(PI.f32)
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)))
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32))))
(sin.f32 (*.f32 x (PI.f32)))
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))

eval4.0ms (0.2%)

Memory
10.4MiB live, 10.4MiB allocated
Compiler

Compiled 2 868 to 85 computations (97% saved)

prune11.0ms (0.5%)

Memory
-16.2MiB live, 22.9MiB allocated
Pruning

12 alts after pruning (6 fresh and 6 done)

PrunedKeptTotal
New68674
Fresh000
Picked055
Done011
Total681280
Accuracy
97.6%
Counts
80 → 12
Alt Table
Click to see full alt table
StatusAccuracyProgram
97.6%
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
61.3%
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
18.8%
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
61.2%
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))
68.1%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)))
25.9%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
25.6%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (*.f32 (*.f32 x (PI.f32)) tau)))
19.8%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (*.f32 (*.f32 x (PI.f32)) tau))
22.2%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)))
18.6%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))
23.1%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (PI.f32)))
18.7%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))))
Compiler

Compiled 650 to 271 computations (58.3% saved)

simplify1.0ms (0.1%)

Memory
2.3MiB live, 2.3MiB allocated
Algorithm
egg-herbie
Localize:

Found 19 expressions of interest:

NewMetricScoreProgram
cost-diff0
(sin.f32 (*.f32 x (PI.f32)))
cost-diff0
#s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32))))
cost-diff0
(/.f32 #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (*.f32 (*.f32 x (PI.f32)) tau))
cost-diff0
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (*.f32 (*.f32 x (PI.f32)) tau)))
cost-diff0
(*.f32 x (PI.f32))
cost-diff0
(sin.f32 (*.f32 x (PI.f32)))
cost-diff0
#s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32))))
cost-diff0
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))))
cost-diff0
(PI.f32)
cost-diff0
(*.f32 x (PI.f32))
cost-diff0
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))
cost-diff0
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))
cost-diff0
(PI.f32)
cost-diff0
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (PI.f32))
cost-diff0
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (PI.f32)))
cost-diff0
(*.f32 x (PI.f32))
cost-diff0
(sin.f32 (*.f32 x (PI.f32)))
cost-diff0
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32))))
cost-diff0
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))
Calls
Call 1
Inputs
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32))))
(sin.f32 (*.f32 x (PI.f32)))
(*.f32 x (PI.f32))
x
(PI.f32)
(/.f32 #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32)))
#s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (PI.f32)))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (PI.f32))
(PI.f32)
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))
(*.f32 x (PI.f32))
x
(PI.f32)
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))))
#s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32))))
(sin.f32 (*.f32 x (PI.f32)))
(*.f32 x (PI.f32))
x
(PI.f32)
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (*.f32 (*.f32 x (PI.f32)) tau)))
(/.f32 #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (*.f32 (*.f32 x (PI.f32)) tau))
#s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32))))
(sin.f32 (*.f32 x (PI.f32)))
(*.f32 x (PI.f32))
x
(PI.f32)
(*.f32 (*.f32 x (PI.f32)) tau)
tau
Outputs
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32))))
(sin.f32 (*.f32 x (PI.f32)))
(*.f32 x (PI.f32))
x
(PI.f32)
(/.f32 #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32)))
#s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (PI.f32)))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (PI.f32))
(PI.f32)
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))
(*.f32 x (PI.f32))
x
(PI.f32)
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))))
#s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32))))
(sin.f32 (*.f32 x (PI.f32)))
(*.f32 x (PI.f32))
x
(PI.f32)
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (*.f32 (*.f32 x (PI.f32)) tau)))
(/.f32 #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (*.f32 (*.f32 x (PI.f32)) tau))
#s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32))))
(sin.f32 (*.f32 x (PI.f32)))
(*.f32 x (PI.f32))
x
(PI.f32)
(*.f32 (*.f32 x (PI.f32)) tau)
tau

localize41.0ms (2.1%)

Memory
-7.1MiB live, 70.9MiB allocated
Localize:

Found 19 expressions of interest:

NewMetricScoreProgram
accuracy0.28671384254663357
(sin.f32 (*.f32 x (PI.f32)))
accuracy0.46587758791597816
(/.f32 #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (*.f32 (*.f32 x (PI.f32)) tau))
accuracy10.170849304035743
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (*.f32 (*.f32 x (PI.f32)) tau)))
accuracy23.639888403355556
#s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32))))
accuracy0.28515625
(*.f32 x (PI.f32))
accuracy0.28671384254663357
(sin.f32 (*.f32 x (PI.f32)))
accuracy23.639888403355556
#s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32))))
accuracy24.900554553995423
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))))
accuracy0.0
(PI.f32)
accuracy0.28515625
(*.f32 x (PI.f32))
accuracy10.170849304035743
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))
accuracy26.016031477908165
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))
accuracy0.0
(PI.f32)
accuracy10.170849304035743
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (PI.f32)))
accuracy24.575156364555742
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (PI.f32))
accuracy0.34279252930532605
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
accuracy0.34279252930532605
(/.f32 #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32)))
accuracy24.983740749086863
#s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
accuracy25.990046401687692
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32))))
Samples
28.0ms256×0valid
Compiler

Compiled 570 to 39 computations (93.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 17.0ms
ival-mult: 5.0ms (29.4% of total)
ival-sinu: 4.0ms (23.5% of total)
ival-sin: 4.0ms (23.5% of total)
ival-div: 3.0ms (17.7% of total)
ival-pi: 1.0ms (5.9% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series11.0ms (0.6%)

Memory
23.3MiB live, 23.4MiB allocated
Counts
16 → 31
Calls
Call 1
Inputs
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32))))
(sin.f32 (*.f32 x (PI.f32)))
(*.f32 x (PI.f32))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (PI.f32)))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (PI.f32))
(PI.f32)
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))))
#s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (*.f32 (*.f32 x (PI.f32)) tau)))
(/.f32 #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (*.f32 (*.f32 x (PI.f32)) tau))
#s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
(/.f32 #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32)))
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
Outputs
1
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (* -1/6 (pow (PI) 2)))))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (+ (* -1/6 (pow (PI) 2)) (* (pow x 2) (+ (* 1/120 (* (pow tau 4) (pow (PI) 4))) (+ (* 1/120 (pow (PI) 4)) (* 1/36 (* (pow tau 2) (pow (PI) 4))))))))))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (+ (* -1/6 (pow (PI) 2)) (* (pow x 2) (+ (* 1/120 (* (pow tau 4) (pow (PI) 4))) (+ (* 1/120 (pow (PI) 4)) (+ (* 1/36 (* (pow tau 2) (pow (PI) 4))) (* (pow x 2) (+ (* -1/720 (* (pow tau 2) (pow (PI) 6))) (+ (* -1/720 (* (pow tau 4) (pow (PI) 6))) (+ (* -1/5040 (* (pow tau 6) (pow (PI) 6))) (* -1/5040 (pow (PI) 6))))))))))))))
(+ 1 (* -1/6 (* (pow tau 2) (* (pow x 2) (pow (PI) 2)))))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (* 1/120 (* (pow tau 4) (* (pow x 2) (pow (PI) 4)))))))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (* (pow x 2) (+ (* -1/5040 (* (pow tau 6) (* (pow x 2) (pow (PI) 6)))) (* 1/120 (* (pow tau 4) (pow (PI) 4))))))))
(* x (PI))
(* x (+ (PI) (* -1/6 (* (pow x 2) (pow (PI) 3)))))
(* x (+ (PI) (* (pow x 2) (+ (* -1/6 (pow (PI) 3)) (* 1/120 (* (pow x 2) (pow (PI) 5)))))))
(* x (+ (PI) (* (pow x 2) (+ (* -1/6 (pow (PI) 3)) (* (pow x 2) (+ (* -1/5040 (* (pow x 2) (pow (PI) 7))) (* 1/120 (pow (PI) 5))))))))
(* tau (* x (PI)))
(* x (+ (* -1/6 (* (pow tau 3) (* (pow x 2) (pow (PI) 3)))) (* tau (PI))))
(* x (+ (* tau (PI)) (* (pow x 2) (+ (* -1/6 (* (pow tau 3) (pow (PI) 3))) (* 1/120 (* (pow tau 5) (* (pow x 2) (pow (PI) 5))))))))
(* x (+ (* tau (PI)) (* (pow x 2) (+ (* -1/6 (* (pow tau 3) (pow (PI) 3))) (* (pow x 2) (+ (* -1/5040 (* (pow tau 7) (* (pow x 2) (pow (PI) 7)))) (* 1/120 (* (pow tau 5) (pow (PI) 5)))))))))
(+ 1 (* -1/6 (* (pow x 2) (pow (PI) 2))))
(+ 1 (* (pow x 2) (+ (* -1/6 (pow (PI) 2)) (* 1/120 (* (pow x 2) (pow (PI) 4))))))
(+ 1 (* (pow x 2) (+ (* -1/6 (pow (PI) 2)) (* (pow x 2) (+ (* -1/5040 (* (pow x 2) (pow (PI) 6))) (* 1/120 (pow (PI) 4)))))))
(/ (* (sin (* tau (* x (PI)))) (sin (* x (PI)))) (* tau (* (pow x 2) (pow (PI) 2))))
(/ (sin (* tau (* x (PI)))) (* tau (* x (PI))))
(sin (* x (PI)))
(sin (* tau (* x (PI))))
(/ (sin (* x (PI))) (* x (PI)))
(+ (* -1/6 (* (pow tau 2) (* x (* (PI) (sin (* x (PI))))))) (/ (sin (* x (PI))) (* x (PI))))
(+ (* (pow tau 2) (+ (* -1/6 (* x (* (PI) (sin (* x (PI)))))) (* 1/120 (* (pow tau 2) (* (pow x 3) (* (pow (PI) 3) (sin (* x (PI))))))))) (/ (sin (* x (PI))) (* x (PI))))
(+ (* (pow tau 2) (+ (* -1/6 (* x (* (PI) (sin (* x (PI)))))) (* (pow tau 2) (+ (* -1/5040 (* (pow tau 2) (* (pow x 5) (* (pow (PI) 5) (sin (* x (PI))))))) (* 1/120 (* (pow x 3) (* (pow (PI) 3) (sin (* x (PI)))))))))) (/ (sin (* x (PI))) (* x (PI))))
(+ 1 (* (pow tau 2) (+ (* -1/6 (* (pow x 2) (pow (PI) 2))) (* 1/120 (* (pow tau 2) (* (pow x 4) (pow (PI) 4)))))))
(+ 1 (* (pow tau 2) (+ (* -1/6 (* (pow x 2) (pow (PI) 2))) (* (pow tau 2) (+ (* -1/5040 (* (pow tau 2) (* (pow x 6) (pow (PI) 6)))) (* 1/120 (* (pow x 4) (pow (PI) 4))))))))
(* tau (+ (* -1/6 (* (pow tau 2) (* (pow x 3) (pow (PI) 3)))) (* x (PI))))
(* tau (+ (* x (PI)) (* (pow tau 2) (+ (* -1/6 (* (pow x 3) (pow (PI) 3))) (* 1/120 (* (pow tau 2) (* (pow x 5) (pow (PI) 5))))))))
(* tau (+ (* x (PI)) (* (pow tau 2) (+ (* -1/6 (* (pow x 3) (pow (PI) 3))) (* (pow tau 2) (+ (* -1/5040 (* (pow tau 2) (* (pow x 7) (pow (PI) 7)))) (* 1/120 (* (pow x 5) (pow (PI) 5)))))))))
Calls

6 calls:

TimeVariablePointExpression
2.0ms
x
@-inf
((* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* x (PI))) (* x (PI)) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (PI) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (sin (* (* x (PI)) tau)) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* x (PI))) (/ (sin (* x (PI))) (* x (PI))) (/ (sin (* x (PI))) (* x (PI))))
2.0ms
tau
@-inf
((* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* x (PI))) (* x (PI)) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (PI) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (sin (* (* x (PI)) tau)) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* x (PI))) (/ (sin (* x (PI))) (* x (PI))) (/ (sin (* x (PI))) (* x (PI))))
2.0ms
x
@inf
((* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* x (PI))) (* x (PI)) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (PI) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (sin (* (* x (PI)) tau)) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* x (PI))) (/ (sin (* x (PI))) (* x (PI))) (/ (sin (* x (PI))) (* x (PI))))
2.0ms
tau
@inf
((* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* x (PI))) (* x (PI)) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (PI) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (sin (* (* x (PI)) tau)) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* x (PI))) (/ (sin (* x (PI))) (* x (PI))) (/ (sin (* x (PI))) (* x (PI))))
1.0ms
x
@0
((* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* x (PI))) (* x (PI)) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (PI) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (sin (* (* x (PI)) tau)) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* x (PI))) (/ (sin (* x (PI))) (* x (PI))) (/ (sin (* x (PI))) (* x (PI))))

simplify1.0ms (0.1%)

Memory
2.1MiB live, 2.1MiB allocated
Algorithm
egg-herbie
Counts
31 → 16
Calls
Call 1
Inputs
1
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (* -1/6 (pow (PI) 2)))))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (+ (* -1/6 (pow (PI) 2)) (* (pow x 2) (+ (* 1/120 (* (pow tau 4) (pow (PI) 4))) (+ (* 1/120 (pow (PI) 4)) (* 1/36 (* (pow tau 2) (pow (PI) 4))))))))))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (+ (* -1/6 (pow (PI) 2)) (* (pow x 2) (+ (* 1/120 (* (pow tau 4) (pow (PI) 4))) (+ (* 1/120 (pow (PI) 4)) (+ (* 1/36 (* (pow tau 2) (pow (PI) 4))) (* (pow x 2) (+ (* -1/720 (* (pow tau 2) (pow (PI) 6))) (+ (* -1/720 (* (pow tau 4) (pow (PI) 6))) (+ (* -1/5040 (* (pow tau 6) (pow (PI) 6))) (* -1/5040 (pow (PI) 6))))))))))))))
(+ 1 (* -1/6 (* (pow tau 2) (* (pow x 2) (pow (PI) 2)))))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (* 1/120 (* (pow tau 4) (* (pow x 2) (pow (PI) 4)))))))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (* (pow x 2) (+ (* -1/5040 (* (pow tau 6) (* (pow x 2) (pow (PI) 6)))) (* 1/120 (* (pow tau 4) (pow (PI) 4))))))))
(* x (PI))
(* x (+ (PI) (* -1/6 (* (pow x 2) (pow (PI) 3)))))
(* x (+ (PI) (* (pow x 2) (+ (* -1/6 (pow (PI) 3)) (* 1/120 (* (pow x 2) (pow (PI) 5)))))))
(* x (+ (PI) (* (pow x 2) (+ (* -1/6 (pow (PI) 3)) (* (pow x 2) (+ (* -1/5040 (* (pow x 2) (pow (PI) 7))) (* 1/120 (pow (PI) 5))))))))
(* tau (* x (PI)))
(* x (+ (* -1/6 (* (pow tau 3) (* (pow x 2) (pow (PI) 3)))) (* tau (PI))))
(* x (+ (* tau (PI)) (* (pow x 2) (+ (* -1/6 (* (pow tau 3) (pow (PI) 3))) (* 1/120 (* (pow tau 5) (* (pow x 2) (pow (PI) 5))))))))
(* x (+ (* tau (PI)) (* (pow x 2) (+ (* -1/6 (* (pow tau 3) (pow (PI) 3))) (* (pow x 2) (+ (* -1/5040 (* (pow tau 7) (* (pow x 2) (pow (PI) 7)))) (* 1/120 (* (pow tau 5) (pow (PI) 5)))))))))
(+ 1 (* -1/6 (* (pow x 2) (pow (PI) 2))))
(+ 1 (* (pow x 2) (+ (* -1/6 (pow (PI) 2)) (* 1/120 (* (pow x 2) (pow (PI) 4))))))
(+ 1 (* (pow x 2) (+ (* -1/6 (pow (PI) 2)) (* (pow x 2) (+ (* -1/5040 (* (pow x 2) (pow (PI) 6))) (* 1/120 (pow (PI) 4)))))))
(/ (* (sin (* tau (* x (PI)))) (sin (* x (PI)))) (* tau (* (pow x 2) (pow (PI) 2))))
(/ (sin (* tau (* x (PI)))) (* tau (* x (PI))))
(sin (* x (PI)))
(sin (* tau (* x (PI))))
(/ (sin (* x (PI))) (* x (PI)))
(+ (* -1/6 (* (pow tau 2) (* x (* (PI) (sin (* x (PI))))))) (/ (sin (* x (PI))) (* x (PI))))
(+ (* (pow tau 2) (+ (* -1/6 (* x (* (PI) (sin (* x (PI)))))) (* 1/120 (* (pow tau 2) (* (pow x 3) (* (pow (PI) 3) (sin (* x (PI))))))))) (/ (sin (* x (PI))) (* x (PI))))
(+ (* (pow tau 2) (+ (* -1/6 (* x (* (PI) (sin (* x (PI)))))) (* (pow tau 2) (+ (* -1/5040 (* (pow tau 2) (* (pow x 5) (* (pow (PI) 5) (sin (* x (PI))))))) (* 1/120 (* (pow x 3) (* (pow (PI) 3) (sin (* x (PI)))))))))) (/ (sin (* x (PI))) (* x (PI))))
(+ 1 (* (pow tau 2) (+ (* -1/6 (* (pow x 2) (pow (PI) 2))) (* 1/120 (* (pow tau 2) (* (pow x 4) (pow (PI) 4)))))))
(+ 1 (* (pow tau 2) (+ (* -1/6 (* (pow x 2) (pow (PI) 2))) (* (pow tau 2) (+ (* -1/5040 (* (pow tau 2) (* (pow x 6) (pow (PI) 6)))) (* 1/120 (* (pow x 4) (pow (PI) 4))))))))
(* tau (+ (* -1/6 (* (pow tau 2) (* (pow x 3) (pow (PI) 3)))) (* x (PI))))
(* tau (+ (* x (PI)) (* (pow tau 2) (+ (* -1/6 (* (pow x 3) (pow (PI) 3))) (* 1/120 (* (pow tau 2) (* (pow x 5) (pow (PI) 5))))))))
(* tau (+ (* x (PI)) (* (pow tau 2) (+ (* -1/6 (* (pow x 3) (pow (PI) 3))) (* (pow tau 2) (+ (* -1/5040 (* (pow tau 2) (* (pow x 7) (pow (PI) 7)))) (* 1/120 (* (pow x 5) (pow (PI) 5)))))))))
Outputs
1
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (* -1/6 (pow (PI) 2)))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32))))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (+ (* -1/6 (pow (PI) 2)) (* (pow x 2) (+ (* 1/120 (* (pow tau 4) (pow (PI) 4))) (+ (* 1/120 (pow (PI) 4)) (* 1/36 (* (pow tau 2) (pow (PI) 4))))))))))
(sin.f32 (*.f32 x (PI.f32)))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (+ (* -1/6 (pow (PI) 2)) (* (pow x 2) (+ (* 1/120 (* (pow tau 4) (pow (PI) 4))) (+ (* 1/120 (pow (PI) 4)) (+ (* 1/36 (* (pow tau 2) (pow (PI) 4))) (* (pow x 2) (+ (* -1/720 (* (pow tau 2) (pow (PI) 6))) (+ (* -1/720 (* (pow tau 4) (pow (PI) 6))) (+ (* -1/5040 (* (pow tau 6) (pow (PI) 6))) (* -1/5040 (pow (PI) 6))))))))))))))
(*.f32 x (PI.f32))
(+ 1 (* -1/6 (* (pow tau 2) (* (pow x 2) (pow (PI) 2)))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (PI.f32)))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (* 1/120 (* (pow tau 4) (* (pow x 2) (pow (PI) 4)))))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (PI.f32))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (* (pow x 2) (+ (* -1/5040 (* (pow tau 6) (* (pow x 2) (pow (PI) 6)))) (* 1/120 (* (pow tau 4) (pow (PI) 4))))))))
(PI.f32)
(* x (PI))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))
(* x (+ (PI) (* -1/6 (* (pow x 2) (pow (PI) 3)))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))
(* x (+ (PI) (* (pow x 2) (+ (* -1/6 (pow (PI) 3)) (* 1/120 (* (pow x 2) (pow (PI) 5)))))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))))
(* x (+ (PI) (* (pow x 2) (+ (* -1/6 (pow (PI) 3)) (* (pow x 2) (+ (* -1/5040 (* (pow x 2) (pow (PI) 7))) (* 1/120 (pow (PI) 5))))))))
#s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32))))
(* tau (* x (PI)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (*.f32 (*.f32 x (PI.f32)) tau)))
(* x (+ (* -1/6 (* (pow tau 3) (* (pow x 2) (pow (PI) 3)))) (* tau (PI))))
(/.f32 #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (*.f32 (*.f32 x (PI.f32)) tau))
(* x (+ (* tau (PI)) (* (pow x 2) (+ (* -1/6 (* (pow tau 3) (pow (PI) 3))) (* 1/120 (* (pow tau 5) (* (pow x 2) (pow (PI) 5))))))))
#s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
(* x (+ (* tau (PI)) (* (pow x 2) (+ (* -1/6 (* (pow tau 3) (pow (PI) 3))) (* (pow x 2) (+ (* -1/5040 (* (pow tau 7) (* (pow x 2) (pow (PI) 7)))) (* 1/120 (* (pow tau 5) (pow (PI) 5)))))))))
(/.f32 #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32)))
(+ 1 (* -1/6 (* (pow x 2) (pow (PI) 2))))
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))

rewrite1.0ms (0.1%)

Memory
2.6MiB live, 2.6MiB allocated
Counts
16 → 16
Calls
Call 1
Inputs
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32))))
(sin.f32 (*.f32 x (PI.f32)))
(*.f32 x (PI.f32))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (PI.f32)))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (PI.f32))
(PI.f32)
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))))
#s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (*.f32 (*.f32 x (PI.f32)) tau)))
(/.f32 #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (*.f32 (*.f32 x (PI.f32)) tau))
#s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
(/.f32 #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32)))
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
Outputs
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32))))
(sin.f32 (*.f32 x (PI.f32)))
(*.f32 x (PI.f32))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (PI.f32)))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (PI.f32))
(PI.f32)
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))))
#s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (*.f32 (*.f32 x (PI.f32)) tau)))
(/.f32 #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (*.f32 (*.f32 x (PI.f32)) tau))
#s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
(/.f32 #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32)))
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))

eval6.0ms (0.3%)

Memory
-31.7MiB live, 9.8MiB allocated
Compiler

Compiled 2 956 to 98 computations (96.7% saved)

prune11.0ms (0.6%)

Memory
25.5MiB live, 25.5MiB allocated
Pruning

18 alts after pruning (8 fresh and 10 done)

PrunedKeptTotal
New59766
Fresh011
Picked055
Done156
Total601878
Accuracy
97.6%
Counts
78 → 18
Alt Table
Click to see full alt table
StatusAccuracyProgram
97.6%
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
61.3%
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
61.2%
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))
60.1%
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 #s(approx (sin (* x (PI))) (/.f32 #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))
68.1%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)))
21.0%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (*.f32 (*.f32 x (PI.f32)) tau))) (*.f32 (*.f32 x (PI.f32)) tau)))
17.1%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (/.f32 #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32)))) (*.f32 (*.f32 x (PI.f32)) tau)))
25.9%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
25.6%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (*.f32 (*.f32 x (PI.f32)) tau)))
21.0%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
25.5%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
19.8%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (*.f32 (*.f32 x (PI.f32)) tau))
22.2%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)))
18.6%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))
23.1%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (PI.f32)))
18.6%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) (/.f32 #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32)))))
18.7%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))))
60.1%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))))
Compiler

Compiled 1 139 to 441 computations (61.3% saved)

simplify2.0ms (0.1%)

Memory
4.3MiB live, 4.3MiB allocated
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
cost-diff0
#s(approx (sin (* (* x (PI)) tau)) (*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))))
cost-diff0
(/.f32 #s(approx (sin (* (* x (PI)) tau)) (*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau))
cost-diff0
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
cost-diff0
(*.f32 x (PI.f32))
cost-diff0
(sin.f32 (*.f32 x (PI.f32)))
cost-diff0
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32))))
cost-diff0
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 #s(approx (sin (* x (PI))) (/.f32 #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))
cost-diff0
#s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
cost-diff0
#s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))))
cost-diff0
(/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau))
cost-diff0
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
cost-diff0
#s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))
cost-diff0
#s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))))
cost-diff0
(/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau))
cost-diff0
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
cost-diff0
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
cost-diff0
#s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
cost-diff0
#s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))))
cost-diff0
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))))
Calls
Call 1
Inputs
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))))
#s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))))
#s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
(sin.f32 (*.f32 x (PI.f32)))
(*.f32 x (PI.f32))
x
(PI.f32)
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
(/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau))
#s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))))
#s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))
(*.f32 x (PI.f32))
x
(PI.f32)
(*.f32 (*.f32 x (PI.f32)) tau)
tau
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
(/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau))
#s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))))
#s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
(sin.f32 (*.f32 x (PI.f32)))
(*.f32 x (PI.f32))
x
(PI.f32)
(*.f32 (*.f32 x (PI.f32)) tau)
tau
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 #s(approx (sin (* x (PI))) (/.f32 #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32))))
(sin.f32 (*.f32 x (PI.f32)))
(*.f32 x (PI.f32))
x
(PI.f32)
(/.f32 #s(approx (sin (* x (PI))) (/.f32 #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32)))
#s(approx (sin (* x (PI))) (/.f32 #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))
(/.f32 #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32)))
#s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
(/.f32 #s(approx (sin (* (* x (PI)) tau)) (*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau))
#s(approx (sin (* (* x (PI)) tau)) (*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))))
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32))))
(sin.f32 (*.f32 x (PI.f32)))
(*.f32 x (PI.f32))
x
(PI.f32)
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
(*.f32 (*.f32 x (PI.f32)) tau)
tau
Outputs
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))))
#s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))))
#s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
(sin.f32 (*.f32 x (PI.f32)))
(*.f32 x (PI.f32))
x
(PI.f32)
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
(/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau))
#s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))))
#s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))
(*.f32 x (PI.f32))
x
(PI.f32)
(*.f32 (*.f32 x (PI.f32)) tau)
tau
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
(/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau))
#s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))))
#s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
(sin.f32 (*.f32 x (PI.f32)))
(*.f32 x (PI.f32))
x
(PI.f32)
(*.f32 (*.f32 x (PI.f32)) tau)
tau
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 #s(approx (sin (* x (PI))) (/.f32 #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32))))
(sin.f32 (*.f32 x (PI.f32)))
(*.f32 x (PI.f32))
x
(PI.f32)
(/.f32 #s(approx (sin (* x (PI))) (/.f32 #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32)))
#s(approx (sin (* x (PI))) (/.f32 #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))
(/.f32 #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32)))
#s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
(/.f32 #s(approx (sin (* (* x (PI)) tau)) (*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau))
#s(approx (sin (* (* x (PI)) tau)) (*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))))
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32))))
(sin.f32 (*.f32 x (PI.f32)))
(*.f32 x (PI.f32))
x
(PI.f32)
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
(*.f32 (*.f32 x (PI.f32)) tau)
tau

localize52.0ms (2.6%)

Memory
-23.7MiB live, 93.6MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.46587758791597816
(/.f32 #s(approx (sin (* (* x (PI)) tau)) (*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau))
accuracy10.170849304035743
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
accuracy24.900554553995423
#s(approx (sin (* (* x (PI)) tau)) (*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))))
accuracy25.990046401687692
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32))))
accuracy24.983740749086863
#s(approx (sin (* x (PI))) (/.f32 #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))
accuracy25.990046401687692
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32))))
accuracy25.990046401687692
#s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))
accuracy26.016031477908165
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))
accuracy0.46587758791597816
(/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau))
accuracy10.170849304035743
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
accuracy23.639888403355556
#s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))))
accuracy24.983740749086863
#s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
accuracy10.170849304035743
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
accuracy23.639888403355556
#s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))))
accuracy25.990046401687692
#s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))
accuracy26.016031477908165
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))
accuracy0.34279252930532605
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
accuracy23.639888403355556
#s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))))
accuracy24.900554553995423
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))))
accuracy24.983740749086863
#s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
Samples
32.0ms256×0valid
Compiler

Compiled 1 146 to 46 computations (96% saved)

Precisions
Click to see histograms. Total time spent on operations: 18.0ms
ival-mult: 5.0ms (27.4% of total)
ival-sinu: 5.0ms (27.4% of total)
ival-sin: 4.0ms (21.9% of total)
ival-div: 3.0ms (16.4% of total)
ival-pi: 1.0ms (5.5% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series12.0ms (0.6%)

Memory
24.4MiB live, 24.4MiB allocated
Counts
20 → 31
Calls
Call 1
Inputs
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))))
#s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))))
#s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
(/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau))
#s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))))
#s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
(/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau))
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 #s(approx (sin (* x (PI))) (/.f32 #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32))))
(sin.f32 (*.f32 x (PI.f32)))
(*.f32 x (PI.f32))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
(/.f32 #s(approx (sin (* (* x (PI)) tau)) (*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau))
#s(approx (sin (* (* x (PI)) tau)) (*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))))
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))
#s(approx (sin (* x (PI))) (/.f32 #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))
Outputs
1
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (* -1/6 (pow (PI) 2)))))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (+ (* -1/6 (pow (PI) 2)) (* (pow x 2) (+ (* 1/120 (* (pow tau 4) (pow (PI) 4))) (+ (* 1/120 (pow (PI) 4)) (* 1/36 (* (pow tau 2) (pow (PI) 4))))))))))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (+ (* -1/6 (pow (PI) 2)) (* (pow x 2) (+ (* 1/120 (* (pow tau 4) (pow (PI) 4))) (+ (* 1/120 (pow (PI) 4)) (+ (* 1/36 (* (pow tau 2) (pow (PI) 4))) (* (pow x 2) (+ (* -1/720 (* (pow tau 2) (pow (PI) 6))) (+ (* -1/720 (* (pow tau 4) (pow (PI) 6))) (+ (* -1/5040 (* (pow tau 6) (pow (PI) 6))) (* -1/5040 (pow (PI) 6))))))))))))))
(* tau (* x (PI)))
(* x (+ (* -1/6 (* (pow tau 3) (* (pow x 2) (pow (PI) 3)))) (* tau (PI))))
(* x (+ (* tau (PI)) (* (pow x 2) (+ (* -1/6 (* (pow tau 3) (pow (PI) 3))) (* 1/120 (* (pow tau 5) (* (pow x 2) (pow (PI) 5))))))))
(* x (+ (* tau (PI)) (* (pow x 2) (+ (* -1/6 (* (pow tau 3) (pow (PI) 3))) (* (pow x 2) (+ (* -1/5040 (* (pow tau 7) (* (pow x 2) (pow (PI) 7)))) (* 1/120 (* (pow tau 5) (pow (PI) 5)))))))))
(* x (PI))
(* x (+ (PI) (* -1/6 (* (pow x 2) (pow (PI) 3)))))
(* x (+ (PI) (* (pow x 2) (+ (* -1/6 (pow (PI) 3)) (* 1/120 (* (pow x 2) (pow (PI) 5)))))))
(* x (+ (PI) (* (pow x 2) (+ (* -1/6 (pow (PI) 3)) (* (pow x 2) (+ (* -1/5040 (* (pow x 2) (pow (PI) 7))) (* 1/120 (pow (PI) 5))))))))
(+ 1 (* -1/6 (* (pow x 2) (pow (PI) 2))))
(+ 1 (* (pow x 2) (+ (* -1/6 (pow (PI) 2)) (* 1/120 (* (pow x 2) (pow (PI) 4))))))
(+ 1 (* (pow x 2) (+ (* -1/6 (pow (PI) 2)) (* (pow x 2) (+ (* -1/5040 (* (pow x 2) (pow (PI) 6))) (* 1/120 (pow (PI) 4)))))))
(+ 1 (* -1/6 (* (pow tau 2) (* (pow x 2) (pow (PI) 2)))))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (* 1/120 (* (pow tau 4) (* (pow x 2) (pow (PI) 4)))))))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (* (pow x 2) (+ (* -1/5040 (* (pow tau 6) (* (pow x 2) (pow (PI) 6)))) (* 1/120 (* (pow tau 4) (pow (PI) 4))))))))
(/ (* (sin (* tau (* x (PI)))) (sin (* x (PI)))) (* tau (* (pow x 2) (pow (PI) 2))))
(sin (* tau (* x (PI))))
(sin (* x (PI)))
(/ (sin (* x (PI))) (* x (PI)))
(/ (sin (* tau (* x (PI)))) (* tau (* x (PI))))
(+ (* -1/6 (* (pow tau 2) (* x (* (PI) (sin (* x (PI))))))) (/ (sin (* x (PI))) (* x (PI))))
(+ (* (pow tau 2) (+ (* -1/6 (* x (* (PI) (sin (* x (PI)))))) (* 1/120 (* (pow tau 2) (* (pow x 3) (* (pow (PI) 3) (sin (* x (PI))))))))) (/ (sin (* x (PI))) (* x (PI))))
(+ (* (pow tau 2) (+ (* -1/6 (* x (* (PI) (sin (* x (PI)))))) (* (pow tau 2) (+ (* -1/5040 (* (pow tau 2) (* (pow x 5) (* (pow (PI) 5) (sin (* x (PI))))))) (* 1/120 (* (pow x 3) (* (pow (PI) 3) (sin (* x (PI)))))))))) (/ (sin (* x (PI))) (* x (PI))))
(* tau (+ (* -1/6 (* (pow tau 2) (* (pow x 3) (pow (PI) 3)))) (* x (PI))))
(* tau (+ (* x (PI)) (* (pow tau 2) (+ (* -1/6 (* (pow x 3) (pow (PI) 3))) (* 1/120 (* (pow tau 2) (* (pow x 5) (pow (PI) 5))))))))
(* tau (+ (* x (PI)) (* (pow tau 2) (+ (* -1/6 (* (pow x 3) (pow (PI) 3))) (* (pow tau 2) (+ (* -1/5040 (* (pow tau 2) (* (pow x 7) (pow (PI) 7)))) (* 1/120 (* (pow x 5) (pow (PI) 5)))))))))
(+ 1 (* (pow tau 2) (+ (* -1/6 (* (pow x 2) (pow (PI) 2))) (* 1/120 (* (pow tau 2) (* (pow x 4) (pow (PI) 4)))))))
(+ 1 (* (pow tau 2) (+ (* -1/6 (* (pow x 2) (pow (PI) 2))) (* (pow tau 2) (+ (* -1/5040 (* (pow tau 2) (* (pow x 6) (pow (PI) 6)))) (* 1/120 (* (pow x 4) (pow (PI) 4))))))))
Calls

6 calls:

TimeVariablePointExpression
2.0ms
x
@-inf
((* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (sin (* (* x (PI)) tau)) (sin (* x (PI))) (/ (sin (* x (PI))) (* x (PI))) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* (* x (PI)) tau)) (sin (* x (PI))) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* x (PI))) (* x (PI)) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* (* x (PI)) tau)) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* x (PI))))
2.0ms
x
@inf
((* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (sin (* (* x (PI)) tau)) (sin (* x (PI))) (/ (sin (* x (PI))) (* x (PI))) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* (* x (PI)) tau)) (sin (* x (PI))) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* x (PI))) (* x (PI)) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* (* x (PI)) tau)) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* x (PI))))
2.0ms
tau
@-inf
((* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (sin (* (* x (PI)) tau)) (sin (* x (PI))) (/ (sin (* x (PI))) (* x (PI))) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* (* x (PI)) tau)) (sin (* x (PI))) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* x (PI))) (* x (PI)) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* (* x (PI)) tau)) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* x (PI))))
2.0ms
tau
@inf
((* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (sin (* (* x (PI)) tau)) (sin (* x (PI))) (/ (sin (* x (PI))) (* x (PI))) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* (* x (PI)) tau)) (sin (* x (PI))) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* x (PI))) (* x (PI)) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* (* x (PI)) tau)) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* x (PI))))
1.0ms
x
@0
((* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (sin (* (* x (PI)) tau)) (sin (* x (PI))) (/ (sin (* x (PI))) (* x (PI))) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* (* x (PI)) tau)) (sin (* x (PI))) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* x (PI))) (* x (PI)) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* (* x (PI)) tau)) (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin (* x (PI))))

simplify1.0ms (0.1%)

Memory
3.5MiB live, 3.5MiB allocated
Algorithm
egg-herbie
Counts
31 → 20
Calls
Call 1
Inputs
1
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (* -1/6 (pow (PI) 2)))))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (+ (* -1/6 (pow (PI) 2)) (* (pow x 2) (+ (* 1/120 (* (pow tau 4) (pow (PI) 4))) (+ (* 1/120 (pow (PI) 4)) (* 1/36 (* (pow tau 2) (pow (PI) 4))))))))))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (+ (* -1/6 (pow (PI) 2)) (* (pow x 2) (+ (* 1/120 (* (pow tau 4) (pow (PI) 4))) (+ (* 1/120 (pow (PI) 4)) (+ (* 1/36 (* (pow tau 2) (pow (PI) 4))) (* (pow x 2) (+ (* -1/720 (* (pow tau 2) (pow (PI) 6))) (+ (* -1/720 (* (pow tau 4) (pow (PI) 6))) (+ (* -1/5040 (* (pow tau 6) (pow (PI) 6))) (* -1/5040 (pow (PI) 6))))))))))))))
(* tau (* x (PI)))
(* x (+ (* -1/6 (* (pow tau 3) (* (pow x 2) (pow (PI) 3)))) (* tau (PI))))
(* x (+ (* tau (PI)) (* (pow x 2) (+ (* -1/6 (* (pow tau 3) (pow (PI) 3))) (* 1/120 (* (pow tau 5) (* (pow x 2) (pow (PI) 5))))))))
(* x (+ (* tau (PI)) (* (pow x 2) (+ (* -1/6 (* (pow tau 3) (pow (PI) 3))) (* (pow x 2) (+ (* -1/5040 (* (pow tau 7) (* (pow x 2) (pow (PI) 7)))) (* 1/120 (* (pow tau 5) (pow (PI) 5)))))))))
(* x (PI))
(* x (+ (PI) (* -1/6 (* (pow x 2) (pow (PI) 3)))))
(* x (+ (PI) (* (pow x 2) (+ (* -1/6 (pow (PI) 3)) (* 1/120 (* (pow x 2) (pow (PI) 5)))))))
(* x (+ (PI) (* (pow x 2) (+ (* -1/6 (pow (PI) 3)) (* (pow x 2) (+ (* -1/5040 (* (pow x 2) (pow (PI) 7))) (* 1/120 (pow (PI) 5))))))))
(+ 1 (* -1/6 (* (pow x 2) (pow (PI) 2))))
(+ 1 (* (pow x 2) (+ (* -1/6 (pow (PI) 2)) (* 1/120 (* (pow x 2) (pow (PI) 4))))))
(+ 1 (* (pow x 2) (+ (* -1/6 (pow (PI) 2)) (* (pow x 2) (+ (* -1/5040 (* (pow x 2) (pow (PI) 6))) (* 1/120 (pow (PI) 4)))))))
(+ 1 (* -1/6 (* (pow tau 2) (* (pow x 2) (pow (PI) 2)))))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (* 1/120 (* (pow tau 4) (* (pow x 2) (pow (PI) 4)))))))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (* (pow x 2) (+ (* -1/5040 (* (pow tau 6) (* (pow x 2) (pow (PI) 6)))) (* 1/120 (* (pow tau 4) (pow (PI) 4))))))))
(/ (* (sin (* tau (* x (PI)))) (sin (* x (PI)))) (* tau (* (pow x 2) (pow (PI) 2))))
(sin (* tau (* x (PI))))
(sin (* x (PI)))
(/ (sin (* x (PI))) (* x (PI)))
(/ (sin (* tau (* x (PI)))) (* tau (* x (PI))))
(+ (* -1/6 (* (pow tau 2) (* x (* (PI) (sin (* x (PI))))))) (/ (sin (* x (PI))) (* x (PI))))
(+ (* (pow tau 2) (+ (* -1/6 (* x (* (PI) (sin (* x (PI)))))) (* 1/120 (* (pow tau 2) (* (pow x 3) (* (pow (PI) 3) (sin (* x (PI))))))))) (/ (sin (* x (PI))) (* x (PI))))
(+ (* (pow tau 2) (+ (* -1/6 (* x (* (PI) (sin (* x (PI)))))) (* (pow tau 2) (+ (* -1/5040 (* (pow tau 2) (* (pow x 5) (* (pow (PI) 5) (sin (* x (PI))))))) (* 1/120 (* (pow x 3) (* (pow (PI) 3) (sin (* x (PI)))))))))) (/ (sin (* x (PI))) (* x (PI))))
(* tau (+ (* -1/6 (* (pow tau 2) (* (pow x 3) (pow (PI) 3)))) (* x (PI))))
(* tau (+ (* x (PI)) (* (pow tau 2) (+ (* -1/6 (* (pow x 3) (pow (PI) 3))) (* 1/120 (* (pow tau 2) (* (pow x 5) (pow (PI) 5))))))))
(* tau (+ (* x (PI)) (* (pow tau 2) (+ (* -1/6 (* (pow x 3) (pow (PI) 3))) (* (pow tau 2) (+ (* -1/5040 (* (pow tau 2) (* (pow x 7) (pow (PI) 7)))) (* 1/120 (* (pow x 5) (pow (PI) 5)))))))))
(+ 1 (* (pow tau 2) (+ (* -1/6 (* (pow x 2) (pow (PI) 2))) (* 1/120 (* (pow tau 2) (* (pow x 4) (pow (PI) 4)))))))
(+ 1 (* (pow tau 2) (+ (* -1/6 (* (pow x 2) (pow (PI) 2))) (* (pow tau 2) (+ (* -1/5040 (* (pow tau 2) (* (pow x 6) (pow (PI) 6)))) (* 1/120 (* (pow x 4) (pow (PI) 4))))))))
Outputs
1
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (* -1/6 (pow (PI) 2)))))
#s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (+ (* -1/6 (pow (PI) 2)) (* (pow x 2) (+ (* 1/120 (* (pow tau 4) (pow (PI) 4))) (+ (* 1/120 (pow (PI) 4)) (* 1/36 (* (pow tau 2) (pow (PI) 4))))))))))
#s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (+ (* -1/6 (pow (PI) 2)) (* (pow x 2) (+ (* 1/120 (* (pow tau 4) (pow (PI) 4))) (+ (* 1/120 (pow (PI) 4)) (+ (* 1/36 (* (pow tau 2) (pow (PI) 4))) (* (pow x 2) (+ (* -1/720 (* (pow tau 2) (pow (PI) 6))) (+ (* -1/720 (* (pow tau 4) (pow (PI) 6))) (+ (* -1/5040 (* (pow tau 6) (pow (PI) 6))) (* -1/5040 (pow (PI) 6))))))))))))))
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
(* tau (* x (PI)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
(* x (+ (* -1/6 (* (pow tau 3) (* (pow x 2) (pow (PI) 3)))) (* tau (PI))))
(/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau))
(* x (+ (* tau (PI)) (* (pow x 2) (+ (* -1/6 (* (pow tau 3) (pow (PI) 3))) (* 1/120 (* (pow tau 5) (* (pow x 2) (pow (PI) 5))))))))
#s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))))
(* x (+ (* tau (PI)) (* (pow x 2) (+ (* -1/6 (* (pow tau 3) (pow (PI) 3))) (* (pow x 2) (+ (* -1/5040 (* (pow tau 7) (* (pow x 2) (pow (PI) 7)))) (* 1/120 (* (pow tau 5) (pow (PI) 5)))))))))
#s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))
(* x (PI))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
(* x (+ (PI) (* -1/6 (* (pow x 2) (pow (PI) 3)))))
(/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau))
(* x (+ (PI) (* (pow x 2) (+ (* -1/6 (pow (PI) 3)) (* 1/120 (* (pow x 2) (pow (PI) 5)))))))
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 #s(approx (sin (* x (PI))) (/.f32 #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))
(* x (+ (PI) (* (pow x 2) (+ (* -1/6 (pow (PI) 3)) (* (pow x 2) (+ (* -1/5040 (* (pow x 2) (pow (PI) 7))) (* 1/120 (pow (PI) 5))))))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32))))
(+ 1 (* -1/6 (* (pow x 2) (pow (PI) 2))))
(sin.f32 (*.f32 x (PI.f32)))
(+ 1 (* (pow x 2) (+ (* -1/6 (pow (PI) 2)) (* 1/120 (* (pow x 2) (pow (PI) 4))))))
(*.f32 x (PI.f32))
(+ 1 (* (pow x 2) (+ (* -1/6 (pow (PI) 2)) (* (pow x 2) (+ (* -1/5040 (* (pow x 2) (pow (PI) 6))) (* 1/120 (pow (PI) 4)))))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
(+ 1 (* -1/6 (* (pow tau 2) (* (pow x 2) (pow (PI) 2)))))
(/.f32 #s(approx (sin (* (* x (PI)) tau)) (*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (* 1/120 (* (pow tau 4) (* (pow x 2) (pow (PI) 4)))))))
#s(approx (sin (* (* x (PI)) tau)) (*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))))
(+ 1 (* (pow x 2) (+ (* -1/6 (* (pow tau 2) (pow (PI) 2))) (* (pow x 2) (+ (* -1/5040 (* (pow tau 6) (* (pow x 2) (pow (PI) 6)))) (* 1/120 (* (pow tau 4) (pow (PI) 4))))))))
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
(/ (* (sin (* tau (* x (PI)))) (sin (* x (PI)))) (* tau (* (pow x 2) (pow (PI) 2))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))
(sin (* tau (* x (PI))))
#s(approx (sin (* x (PI))) (/.f32 #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))

rewrite3.0ms (0.2%)

Memory
-38.1MiB live, 3.6MiB allocated
Counts
20 → 20
Calls
Call 1
Inputs
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))))
#s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))))
#s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
(/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau))
#s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))))
#s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
(/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau))
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 #s(approx (sin (* x (PI))) (/.f32 #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32))))
(sin.f32 (*.f32 x (PI.f32)))
(*.f32 x (PI.f32))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
(/.f32 #s(approx (sin (* (* x (PI)) tau)) (*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau))
#s(approx (sin (* (* x (PI)) tau)) (*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))))
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))
#s(approx (sin (* x (PI))) (/.f32 #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))
Outputs
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))))
#s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))))
#s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
(/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau))
#s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))))
#s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
(/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau))
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 #s(approx (sin (* x (PI))) (/.f32 #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32))))
(sin.f32 (*.f32 x (PI.f32)))
(*.f32 x (PI.f32))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
(/.f32 #s(approx (sin (* (* x (PI)) tau)) (*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau))
#s(approx (sin (* (* x (PI)) tau)) (*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))))
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
#s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))
#s(approx (sin (* x (PI))) (/.f32 #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))

eval5.0ms (0.2%)

Memory
11.4MiB live, 11.4MiB allocated
Compiler

Compiled 4 590 to 111 computations (97.6% saved)

prune20.0ms (1%)

Memory
4.3MiB live, 43.8MiB allocated
Pruning

24 alts after pruning (9 fresh and 15 done)

PrunedKeptTotal
New72678
Fresh033
Picked055
Done01010
Total722496
Accuracy
97.6%
Counts
96 → 24
Alt Table
Click to see full alt table
StatusAccuracyProgram
97.6%
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
61.3%
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
61.2%
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))
60.1%
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 #s(approx (sin (* x (PI))) (/.f32 #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))
68.1%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)))
21.0%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (*.f32 (*.f32 x (PI.f32)) tau))) (*.f32 (*.f32 x (PI.f32)) tau)))
21.1%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau))) (*.f32 (*.f32 x (PI.f32)) tau)))
17.1%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (/.f32 #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32)))) (*.f32 (*.f32 x (PI.f32)) tau)))
25.9%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
18.1%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) #s(approx (/ (sin (* x (PI))) (* x (PI))) (sin.f32 (*.f32 x (PI.f32)))))) (*.f32 (*.f32 x (PI.f32)) tau)))
25.6%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (*.f32 (*.f32 x (PI.f32)) tau)))
21.0%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
17.8%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))) (*.f32 (*.f32 x (PI.f32)) tau)))
20.2%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
21.0%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 #s(approx (sin (* x (PI))) (/.f32 #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32)))))) (*.f32 (*.f32 x (PI.f32)) tau)))
25.5%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
19.8%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (*.f32 (*.f32 x (PI.f32)) tau))
22.2%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)))
18.6%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))
23.1%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (PI.f32)))
18.6%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) (/.f32 #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32)))))
18.7%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))))
60.1%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))))
59.4%
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))))
Compiler

Compiled 2 320 to 495 computations (78.7% saved)

regimes29.0ms (1.5%)

Memory
15.5MiB live, 54.6MiB allocated
Counts
25 → 1
Calls
Call 1
Inputs
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (PI.f32)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (*.f32 (*.f32 x (PI.f32)) tau))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau))) (*.f32 (*.f32 x (PI.f32)) tau)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (*.f32 (*.f32 x (PI.f32)) tau)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) (/.f32 #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32)))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (*.f32 (*.f32 x (PI.f32)) tau))) (*.f32 (*.f32 x (PI.f32)) tau)))
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 #s(approx (sin (* x (PI))) (/.f32 #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (/.f32 #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32)))) (*.f32 (*.f32 x (PI.f32)) tau)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))) (*.f32 (*.f32 x (PI.f32)) tau)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 #s(approx (sin (* x (PI))) (/.f32 #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32)))))) (*.f32 (*.f32 x (PI.f32)) tau)))
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) #s(approx (/ (sin (* x (PI))) (* x (PI))) (sin.f32 (*.f32 x (PI.f32)))))) (*.f32 (*.f32 x (PI.f32)) tau)))
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
Outputs
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
Calls

4 calls:

8.0ms
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
7.0ms
(*.f32 x (PI.f32))
7.0ms
x
7.0ms
tau
Results
AccuracySegmentsBranch
97.6%1x
97.6%1tau
97.6%1(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
97.6%1(*.f32 x (PI.f32))
Compiler

Compiled 26 to 18 computations (30.8% saved)

regimes29.0ms (1.5%)

Memory
-26.0MiB live, 54.2MiB allocated
Counts
24 → 1
Calls
Call 1
Inputs
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (PI.f32)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (*.f32 (*.f32 x (PI.f32)) tau))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau))) (*.f32 (*.f32 x (PI.f32)) tau)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (*.f32 (*.f32 x (PI.f32)) tau)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) (/.f32 #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32)))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (*.f32 (*.f32 x (PI.f32)) tau))) (*.f32 (*.f32 x (PI.f32)) tau)))
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 #s(approx (sin (* x (PI))) (/.f32 #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (/.f32 #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32)))) (*.f32 (*.f32 x (PI.f32)) tau)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))) (*.f32 (*.f32 x (PI.f32)) tau)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 #s(approx (sin (* x (PI))) (/.f32 #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32)))))) (*.f32 (*.f32 x (PI.f32)) tau)))
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) #s(approx (/ (sin (* x (PI))) (* x (PI))) (sin.f32 (*.f32 x (PI.f32)))))) (*.f32 (*.f32 x (PI.f32)) tau)))
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))
(*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (*.f32 #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
Outputs
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)))
Calls

4 calls:

7.0ms
x
7.0ms
tau
6.0ms
(*.f32 x (PI.f32))
6.0ms
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
Results
AccuracySegmentsBranch
68.1%1x
68.1%1(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
68.1%1(*.f32 x (PI.f32))
68.1%1tau
Compiler

Compiled 26 to 18 computations (30.8% saved)

regimes15.0ms (0.8%)

Memory
30.4MiB live, 30.4MiB allocated
Counts
11 → 1
Calls
Call 1
Inputs
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (PI.f32)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (*.f32 (*.f32 x (PI.f32)) tau))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau))) (*.f32 (*.f32 x (PI.f32)) tau)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))) (*.f32 (*.f32 x (PI.f32)) tau)))
Outputs
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))))
Calls

4 calls:

4.0ms
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
4.0ms
(*.f32 x (PI.f32))
4.0ms
tau
3.0ms
x
Results
AccuracySegmentsBranch
60.1%1(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
60.1%1tau
60.1%1x
60.1%1(*.f32 x (PI.f32))
Compiler

Compiled 26 to 18 computations (30.8% saved)

regimes13.0ms (0.7%)

Memory
-12.5MiB live, 26.9MiB allocated
Counts
9 → 1
Calls
Call 1
Inputs
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (PI.f32)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (*.f32 (*.f32 x (PI.f32)) tau))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 #s(approx (sin (* (* x (PI)) tau)) (/.f32 #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))) (*.f32 (*.f32 x (PI.f32)) tau))) (*.f32 (*.f32 x (PI.f32)) tau)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) (sin.f32 (*.f32 x (PI.f32)))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)))
Outputs
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))))
Calls

4 calls:

4.0ms
(*.f32 x (PI.f32))
3.0ms
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
3.0ms
x
3.0ms
tau
Results
AccuracySegmentsBranch
59.4%1(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
59.4%1tau
59.4%1x
59.4%1(*.f32 x (PI.f32))
Compiler

Compiled 26 to 18 computations (30.8% saved)

regimes7.0ms (0.3%)

Memory
16.0MiB live, 16.0MiB allocated
Accuracy

Total -1.6b remaining (-6.6%)

Threshold costs -1.6b (-6.6%)

Counts
3 → 1
Calls
Call 1
Inputs
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (PI.f32)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (*.f32 (*.f32 x (PI.f32)) tau))
Outputs
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (PI.f32)))
Calls

4 calls:

2.0ms
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
2.0ms
(*.f32 x (PI.f32))
2.0ms
x
1.0ms
tau
Results
AccuracySegmentsBranch
23.1%1(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
23.1%1tau
23.1%1x
23.1%1(*.f32 x (PI.f32))
Compiler

Compiled 26 to 18 computations (30.8% saved)

simplify6.0ms (0.3%)

Memory
-27.1MiB live, 12.2MiB allocated
Algorithm
egg-herbie
Calls
Call 1
Inputs
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (PI.f32)))
Outputs
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (sin (* (* x (PI)) tau)) #s(approx (sin (* x (PI))) (/.f32 #s(approx (sin (* x (PI))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))))
#s(approx (* (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (/ (sin (* x (PI))) (* x (PI)))) #s(approx (/ (sin (* (* x (PI)) tau)) (* (* x (PI)) tau)) (PI.f32)))

soundness1.0ms (0%)

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

Compiled 192 to 30 computations (84.4% saved)

preprocess21.0ms (1.1%)

Memory
4.1MiB live, 43.0MiB allocated
Compiler

Compiled 426 to 80 computations (81.2% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...