How to subdivide?

I am trying to subdivide a region 3 however my math seems to be totally wrong. This is what I got so far

local function spliceRegions(subdivisions, min, max)
	local regions = {}
	for i=1,subdivisions do
		local newMin = Vector3.new(min.X/subdivisions+(min.X/i), min.Y/subdivisions+(min.Y/i), min.Z/subdivisions+(min.Z/i))
		local newMax = Vector3.new(max.X/subdivisions+(max.X/i), max.Y/subdivisions+(max.Y/i), max.Z/subdivisions+(max.Z/i))
		regions[i] = Region3.new(newMin, newMax)
	end
	return regions
end