summaryrefslogtreecommitdiff
path: root/factors/regular_complexity.go
blob: 763bcd75d5236ae0e8fe7e96a5506a31cc3da36a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
package factors

import (
	"math"
)

func PrimeRegularComplexities(radix uint) map[uint]float64 {
	var factorization = PrimeFactorize(radix)
	var complexities = make(map[uint]float64, len(factorization.exponents))
	for p, e := range factorization.exponents {
		var part = float64(uintpow(p, e))
		var complexity = math.Pow(float64(radix)/part, 1/float64(e))
		complexities[p] = complexity
	}
	return complexities
}