does KNN have a hypothesis space? if yes, Is there a way to clearly define the hypothesis space with the instances?
The hypothesis in this case is a way to formally describe the model. The model could be a hyperplane, a set of conditions on input with a constant for each branch (decision trees) or whatever you like. The set of all possible hypothesis in a given representation is named hypothesis space. Knn prediction is realized using the first k instances from a training data set. So knn cannot represent a hyperplane because of the finite amount of datapoints. This is why choosing a representation restricts the hypothesis space. You are restricted to things which can be represented by instances and distance. SVM is the same because the support vectors are selected instances from the training dataset and the fitted surface is obtained using support vectors and kernelized distances from those.