First, I should point out that anyone can look at the code to see the computational details for an extension.
p0 is just the first and possibly the only proportion specified.
The CI for the difference for each proportion after the first one is computed as
zdifflow = p1 - p0 - sdvec[i] * zalpha2
zdiffhigh = p1 - p0 + sdvec[i] * zalpha2
and
COMPUTE PLOWBI = IDF.BETA(%(alphalow)s, num + .5, denom-num + .5).
COMPUTE PHIGHBI = IDF.BETA(%(alphahigh)s, num + .5, denom - num + .5).
DO IF num > 0.
COMPUTE PLOWPOIS = (IDF.CHISQ(%(alphalow)s, 2*num)/2)/denom.
ELSE.
COMPUTE PLOWPOIS = 0.
END IF.
COMPUTE PHIGHPOIS = (IDF.CHISQ(%(alphahigh)s, 2*(num+1))/2) / denom.
COMPUTE ZTAIL = IDF.NORMAL(%(alphahigh)s, 0,1).
zalpha2 = ZTAIL
The sdvec values are
sqrt(p0*(1-p0)/denomvec[0] + p1*(1-p1)/denomvec[i]))
(The COMPUTEs shown above do not actually appear in the active file but are computed by the Statistics backend using the standard function as you can see in the CSR or the Compute dialog.)
--