func estimateCost(i interface{}) (min, max int64) {
	c, ok := i.(Coster)
	if !ok {
		return 0, math.MaxInt64
	}
	return c.Cost()
}
estimateCost returns the heuristic cost interval for the program.
package interpreter
import "math"
type Coster interface {
	Cost() (min, max int64)
}