Average Error: 0.0 → 0.0
Time: 1.3m
Precision: 64
Internal Precision: 128
\[\left(\left(x \cdot y + z \cdot t\right) + a \cdot b\right) + c \cdot i\]
\[c \cdot i + \left(\left(z \cdot t + x \cdot y\right) + a \cdot b\right)\]

Error

Bits error versus x

Bits error versus y

Bits error versus z

Bits error versus t

Bits error versus a

Bits error versus b

Bits error versus c

Bits error versus i

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.0

    \[\left(\left(x \cdot y + z \cdot t\right) + a \cdot b\right) + c \cdot i\]
  2. Final simplification0.0

    \[\leadsto c \cdot i + \left(\left(z \cdot t + x \cdot y\right) + a \cdot b\right)\]

Reproduce

herbie shell --seed 2018365 
(FPCore (x y z t a b c i)
  :name "Linear.V4:$cdot from linear-1.19.1.3"
  (+ (+ (+ (* x y) (* z t)) (* a b)) (* c i)))

Details

Time bar (total: 1.2m)Debug log

start92.0ms

Algorithm
intervals

setup109.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 0.0b

localize45.0ms

Local error

Found 2 expressions with local error:

0.0b
(+ (+ (* x y) (* z t)) (* a b))
0.0b
(+ (+ (+ (* x y) (* z t)) (* a b)) (* c i))

rewrite56.0ms

Algorithm
rewrite-expression-head
Counts
2 → 27
Calls

2 calls. Slowest were:

47.0ms
(+ (+ (+ (* x y) (* z t)) (* a b)) (* c i))
9.0ms
(+ (+ (* x y) (* z t)) (* a b))

series319.0ms

Counts
2 → 6
Calls

2 calls. Slowest were:

269.0ms
(+ (+ (+ (* x y) (* z t)) (* a b)) (* c i))
50.0ms
(+ (+ (* x y) (* z t)) (* a b))

simplify618.0ms

Counts
13 → 33
Calls

13 calls. Slowest were:

192.0ms
(* (* (* (exp (* x y)) (exp (* z t))) (exp (* a b))) (exp (* c i)))
139.0ms
(* (* (exp (+ (* x y) (* z t))) (exp (* a b))) (exp (* c i)))
129.0ms
(* (exp (+ (+ (* x y) (* z t)) (* a b))) (exp (* c i)))

prune531.0ms

Pruning

2 alts after pruning (1 fresh and 1 done)

Merged error: 0.0b

localize31.0ms

Local error

Found 4 expressions with local error:

25.8b
(/ (- (* (+ (* x y) (* z t)) (+ (* x y) (* z t))) (* (* a b) (* a b))) (- (+ (* x y) (* z t)) (* a b)))
2.8b
(- (* (+ (* x y) (* z t)) (+ (* x y) (* z t))) (* (* a b) (* a b)))
0.3b
(* (+ (* x y) (* z t)) (+ (* x y) (* z t)))
0.3b
(* (* a b) (* a b))

rewrite74.0ms

Algorithm
rewrite-expression-head
Counts
4 → 97
Calls

4 calls. Slowest were:

51.0ms
(/ (- (* (+ (* x y) (* z t)) (+ (* x y) (* z t))) (* (* a b) (* a b))) (- (+ (* x y) (* z t)) (* a b)))
11.0ms
(- (* (+ (* x y) (* z t)) (+ (* x y) (* z t))) (* (* a b) (* a b)))
8.0ms
(* (+ (* x y) (* z t)) (+ (* x y) (* z t)))

series664.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

407.0ms
(- (* (+ (* x y) (* z t)) (+ (* x y) (* z t))) (* (* a b) (* a b)))
193.0ms
(/ (- (* (+ (* x y) (* z t)) (+ (* x y) (* z t))) (* (* a b) (* a b))) (- (+ (* x y) (* z t)) (* a b)))
40.0ms
(* (+ (* x y) (* z t)) (+ (* x y) (* z t)))
24.0ms
(* (* a b) (* a b))

simplify13.4s

Counts
85 → 109
Calls

85 calls. Slowest were:

735.0ms
(* (* (* (* a b) (* a b)) (* a b)) (* (* (* a b) (* a b)) (* a b)))
452.0ms
(+ (* (* x y) (* x y)) (- (* (* z t) (* z t)) (* (* x y) (* z t))))
446.0ms
(/ (sqrt (- (* (+ (* x y) (* z t)) (+ (* x y) (* z t))) (* (* a b) (* a b)))) (* (cbrt (- (+ (* x y) (* z t)) (* a b))) (cbrt (- (+ (* x y) (* z t)) (* a b)))))

prune2.1s

Pruning

4 alts after pruning (3 fresh and 1 done)

Merged error: 0.0b

localize45.0ms

Local error

Found 4 expressions with local error:

21.0b
(* (/ 1 (* (cbrt (- (+ (* x y) (* z t)) (* a b))) (cbrt (- (+ (* x y) (* z t)) (* a b))))) (/ (- (* (+ (* x y) (* z t)) (+ (* x y) (* z t))) (* (* a b) (* a b))) (cbrt (- (+ (* x y) (* z t)) (* a b)))))
4.5b
(/ (- (* (+ (* x y) (* z t)) (+ (* x y) (* z t))) (* (* a b) (* a b))) (cbrt (- (+ (* x y) (* z t)) (* a b))))
2.8b
(- (* (+ (* x y) (* z t)) (+ (* x y) (* z t))) (* (* a b) (* a b)))
0.8b
(cbrt (- (+ (* x y) (* z t)) (* a b)))

rewrite528.0ms

Algorithm
rewrite-expression-head
Counts
4 → 141
Calls

4 calls. Slowest were:

468.0ms
(* (/ 1 (* (cbrt (- (+ (* x y) (* z t)) (* a b))) (cbrt (- (+ (* x y) (* z t)) (* a b))))) (/ (- (* (+ (* x y) (* z t)) (+ (* x y) (* z t))) (* (* a b) (* a b))) (cbrt (- (+ (* x y) (* z t)) (* a b)))))
36.0ms
(/ (- (* (+ (* x y) (* z t)) (+ (* x y) (* z t))) (* (* a b) (* a b))) (cbrt (- (+ (* x y) (* z t)) (* a b))))
11.0ms
(- (* (+ (* x y) (* z t)) (+ (* x y) (* z t))) (* (* a b) (* a b)))

series8.6s

Counts
4 → 12
Calls

4 calls. Slowest were:

7.7s
(/ (- (* (+ (* x y) (* z t)) (+ (* x y) (* z t))) (* (* a b) (* a b))) (cbrt (- (+ (* x y) (* z t)) (* a b))))
435.0ms
(- (* (+ (* x y) (* z t)) (+ (* x y) (* z t))) (* (* a b) (* a b)))
262.0ms
(* (/ 1 (* (cbrt (- (+ (* x y) (* z t)) (* a b))) (cbrt (- (+ (* x y) (* z t)) (* a b))))) (/ (- (* (+ (* x y) (* z t)) (+ (* x y) (* z t))) (* (* a b) (* a b))) (cbrt (- (+ (* x y) (* z t)) (* a b)))))
158.0ms
(cbrt (- (+ (* x y) (* z t)) (* a b)))

simplify28.3s

Counts
139 → 153
Calls

139 calls. Slowest were:

721.0ms
(- (* 7/27 (/ (* (pow b 2) (* (exp (* 1/3 (+ (log (/ -1 x)) (log (/ -1 y))))) (* t (* z (pow a 2))))) (* x y))) (+ (* 7/9 (* (pow a 2) (* (pow b 2) (exp (* 1/3 (+ (log (/ -1 x)) (log (/ -1 y)))))))) (* 14/81 (/ (* (pow b 2) (* (exp (* 1/3 (+ (log (/ -1 x)) (log (/ -1 y))))) (* (pow t 2) (* (pow z 2) (pow a 2))))) (* (pow x 2) (pow y 2))))))
720.0ms
(/ (cbrt (- (* (+ (* x y) (* z t)) (+ (* x y) (* z t))) (* (* a b) (* a b)))) (cbrt (sqrt (- (+ (* x y) (* z t)) (* a b)))))
623.0ms
(- (* 7/27 (/ (* (pow b 2) (* t (* z (* (exp (* 1/3 (+ (log (/ 1 x)) (log (/ 1 y))))) (pow a 2))))) (* x y))) (+ (* 14/81 (/ (* (pow b 2) (* (pow t 2) (* (pow z 2) (* (exp (* 1/3 (+ (log (/ 1 x)) (log (/ 1 y))))) (pow a 2))))) (* (pow x 2) (pow y 2)))) (* 7/9 (* (pow a 2) (* (exp (* 1/3 (+ (log (/ 1 x)) (log (/ 1 y))))) (pow b 2))))))

prune3.4s

Pruning

4 alts after pruning (2 fresh and 2 done)

Merged error: 0.0b

localize29.0ms

Local error

Found 4 expressions with local error:

25.8b
(/ (- (* (+ (* x y) (* z t)) (+ (* x y) (* z t))) (* a (* b (* a b)))) (- (+ (* x y) (* z t)) (* a b)))
6.1b
(* a (* b (* a b)))
2.8b
(- (* (+ (* x y) (* z t)) (+ (* x y) (* z t))) (* a (* b (* a b))))
0.3b
(* (+ (* x y) (* z t)) (+ (* x y) (* z t)))

rewrite79.0ms

Algorithm
rewrite-expression-head
Counts
4 → 85
Calls

4 calls. Slowest were:

44.0ms
(/ (- (* (+ (* x y) (* z t)) (+ (* x y) (* z t))) (* a (* b (* a b)))) (- (+ (* x y) (* z t)) (* a b)))
17.0ms
(* (+ (* x y) (* z t)) (+ (* x y) (* z t)))
14.0ms
(- (* (+ (* x y) (* z t)) (+ (* x y) (* z t))) (* a (* b (* a b))))

series677.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

374.0ms
(- (* (+ (* x y) (* z t)) (+ (* x y) (* z t))) (* a (* b (* a b))))
223.0ms
(/ (- (* (+ (* x y) (* z t)) (+ (* x y) (* z t))) (* a (* b (* a b)))) (- (+ (* x y) (* z t)) (* a b)))
51.0ms
(* (+ (* x y) (* z t)) (+ (* x y) (* z t)))
28.0ms
(* a (* b (* a b)))

simplify9.8s

Counts
71 → 97
Calls

71 calls. Slowest were:

577.0ms
(/ (sqrt (- (* (+ (* x y) (* z t)) (+ (* x y) (* z t))) (* a (* b (* a b))))) 1)
476.0ms
(+ (* (* x y) (* x y)) (- (* (* z t) (* z t)) (* (* x y) (* z t))))
444.0ms
(* (+ (pow (* x y) 3) (pow (* z t) 3)) (- (* (* x y) (* x y)) (* (* z t) (* z t))))

prune1.8s

Pruning

4 alts after pruning (1 fresh and 3 done)

Merged error: 0.0b

regimes1.4s

Accuracy

0% (0.0b remaining)

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

bsearch2.0ms