I've got this sentence:
$\exists x \forall y (U(y) \rightarrow ( y = x \vee y = root))$
where U(x) means the program is to be upgraded and root is a constant that is the root program.
I'm told the sentence means 'at most one program other than root can be upgraded', but I don't understand how. As I understand it $\exists x$ means there must be one or more x, so why doesn't the sentence mean 'at least one program other than root can be upgraded'?
The sentence says that there exist at least one such $x$, such that any upgradable program $y$ is either $x$ or $root$. So, let $x$ be that one, and let $x'$ be another program such that $U(x')$. By your formula (applied to $x$), $U(x')$ implies that either $x'$ is $x$, or it is $root$.