Average Error: 0.0 → 0.0
Time: 1.7s
Precision: 64
Internal Precision: 128
\[re \cdot im + im \cdot re\]
\[re \cdot im + re \cdot im\]

Error

Bits error versus re

Bits error versus im

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.0

    \[re \cdot im + im \cdot re\]
  2. Final simplification0.0

    \[\leadsto re \cdot im + re \cdot im\]

Reproduce

herbie shell --seed 2019005 +o rules:numerics
(FPCore (re im)
  :name "math.square on complex, imaginary part"
  (+ (* re im) (* im re)))

Details

Time bar (total: 1.4s)Debug log

sample134.0ms

Algorithm
intervals

simplify21.0ms

Counts
1 → 1
Calls

1 calls. Slowest were:

20.0ms
(+ (* re im) (* im re))

prune17.0ms

Pruning

2 alts after pruning (2 fresh and 0 done)

Merged error: 0b

localize21.0ms

Local error

Found 1 expressions with local error:

0.0b
(+ (* re im) (* im re))

rewrite9.0ms

Algorithm
rewrite-expression-head
Counts
1 → 14
Calls

1 calls. Slowest were:

6.0ms
(+ (* re im) (* im re))

series30.0ms

Counts
1 → 3
Calls

1 calls. Slowest were:

29.0ms
(+ (* re im) (* im re))

simplify71.0ms

Counts
4 → 17
Calls

4 calls. Slowest were:

23.0ms
(* 2 (* re im))
20.0ms
(* (exp (* re im)) (exp (* im re)))
13.0ms
(* 2 (* re im))

prune100.0ms

Pruning

2 alts after pruning (1 fresh and 1 done)

Merged error: 0b

localize5.0ms

Local error

Found 1 expressions with local error:

0.2b
(* re (+ im im))

rewrite1.0ms

Algorithm
rewrite-expression-head
Counts
1 → 17
Calls

1 calls. Slowest were:

1.0ms
(* re (+ im im))

series11.0ms

Counts
1 → 3
Calls

1 calls. Slowest were:

11.0ms
(* re (+ im im))

simplify39.0ms

Counts
10 → 20
Calls

10 calls. Slowest were:

13.0ms
(+ (* im im) (- (* im im) (* im im)))
7.0ms
(* 2 (* re im))
6.0ms
(* 2 (* re im))

prune99.0ms

Pruning

2 alts after pruning (0 fresh and 2 done)

Merged error: 0b

regimes84.0ms

Accuracy

0% (0.0b remaining)

Error of 0.0b against oracle of 0b and baseline of 0.0b

bsearch1.0ms

end0.0ms

sample804.0ms

Algorithm
intervals