CriticalValue <- function(n, p, alpha) { qnorm(alpha) * sqrt((p * (1 - p)) / n) } PNegateC <- function(p, n, c, alpha) { pnorm( ( c + CriticalValue(n, c, 1 - alpha / 2) - p ) / sqrt((p * (1 - p)) / n) ) - pnorm( ( c - CriticalValue(n, c, 1 - alpha / 2) - p ) / sqrt((p * (1 - p)) / n) ) } n.vec <- 10 ^ (1:3) c.vec <- c(0.25, 0.5, 0.75) p <- seq(0, 1, length = 200) par(mfrow = c(length(n.vec), length(c.vec))) for (n in n.vec) { for (c in c.vec) { plot(p, 1 - PNegateC(p, n, c, 0.05), type = "l", main = paste("c =", c, "\nn =", n), ylab = "A(p) = 1 - B(p)") } }