  ML models are typically trained using large datasets of high quality.
However, training datasets often contain inconsistent or incomplete data. To
tackle this issue, one solution is to develop algorithms that can check whether
a prediction of a model is certifiably robust. Given a learning algorithm that
produces a classifier and given an example at test time, a classification
outcome is certifiably robust if it is predicted by every model trained across
all possible worlds (repairs) of the uncertain (inconsistent) dataset. This
notion of robustness falls naturally under the framework of certain answers. In
this paper, we study the complexity of certifying robustness for a simple but
widely deployed classification algorithm, $k$-Nearest Neighbors ($k$-NN). Our
main focus is on inconsistent datasets when the integrity constraints are
functional dependencies (FDs). For this setting, we establish a dichotomy in
the complexity of certifying robustness w.r.t. the set of FDs: the problem
either admits a polynomial time algorithm, or it is coNP-hard. Additionally, we
exhibit a similar dichotomy for the counting version of the problem, where the
goal is to count the number of possible worlds that predict a certain label. As
a byproduct of our study, we also establish the complexity of a problem related
to finding an optimal subset repair that may be of independent interest.
