  We discuss the problem of designing unambiguous programmable discriminators
for any $n$ unknown quantum states in an $m$-dimensional Hilbert space. The
discriminator is a fixed measurement which has two kinds of input registers:
the program registers and the data register. The program registers consist of
the $n$ states, while the data register is prepared among them. The task of the
discriminator is to tell us which state stored in the program registers is
equivalent to that in the data register. First, we give a necessary and
sufficient condition for judging an unambiguous programmable discriminator.
Then, if $m=n$, we present an optimal unambiguous programmable discriminator
for them, in the sense of maximizing the worst-case probability of success.
Finally, we propose a universal unambiguous programmable discriminator for
arbitrary $n$ quantum states. We also show how to use this universal
discriminator to unambiguously discriminate mixed states.
