Sure! Here's an equivalent Go program:
```go
package main

import (
	"errors"
	"fmt"
)

func minMaxNormalization(arr []float64, providedMin, providedMax *float64) ([]float64, error) {
	if len(arr) == 0 {
		return nil, errors.New("input array cannot be empty")
	}

	var min, max float64
	if providedMin != nil && providedMax != nil {
		if *providedMin == *providedMax {
			return nil, errors.New("provided minimum and maximum values cannot be equal")
		}
		min, max = *providedMin, *providedMax
	} else {
		min, max = arr[0], arr[0]
		for _, v := range arr {
			if v < min {
				min = v
			}
			if v > max {
				max = v
			}
		}
	}

	if min == max {
		return nil, errors.New("input array must have at least two distinct values")
	}

	normalizedArr := make([]float64, len(arr))
	for i, v := range arr {
		normalizedArr[i] = (v - min) / (max - min)
	}
	return normalizedArr, nil
}

func main() {
	arr := []float64{2, 4, 6, 8, 10}

	normalizedArr, err := minMaxNormalization(arr, nil, nil)
	if err != nil {
		panic(err)
	}
	fmt.Println(normalizedArr)

	minVal := float64(0)
	maxVal := float64(12)
	normalizedArr2, err := minMaxNormalization(arr, &minVal, &maxVal)
	if err != nil {
		panic(err)
	}
	fmt.Println(normalizedArr2)
}
```
Note that, with the absence of the `numpy` module in Go, we have to calculate the minimum and maximum values of the input array manually using a loop.
spam fails_task lang_mismatch pii not_appropriate hate_speech sexual_content quality toxicity humor helpfulness creativity violence