PROC y := P(x) IS VAR scale = 1 IN IF x > 1 -> DO x > 1 -> x := x / 4; scale := scale * 2 OD | x < 1 / 4 -> DO x < 1 / 4 -> x := x * 4; scale := scale / 2 OD FI; IF VAR sqrt ~ x IN sqrt * sqrt = x -> y := sqrt * scale END FI END END;