I think an ideal filter is one that will make objects in the magnified graph look smooth and the algorithm will not take too long time. If we just consider the nearest pixel, the outcome graph will have jaggies and the edges make look strange. But the algorithm will take less time compared to the bilinear interpolation, in which we need to consider more pixels when dealing with every pixel.
I think the ideal filter is the gaussian kernel because it has a similar idea of bilinear where you are doing a weighted average, but it's more smooth.
I don't think there's a reconstruction matrix for nearest because it is non-linear, but if we're just saying a function, I imagine it's just with if statements.
I would say the pros and cons of each is that nearest is probably fastest, bilinear is second fastest, and gaussian is slow because it goes over many more pixels than bilinear. But the conversely, gaussian would look the smoothest, then linear, then nearest.
The theoretically ideal filter is bicubic interpolation regardless of speed. Nearest neighbour interpolation is the fastest but produces images with lots of jaggies. Bilinear interpolation is the second fastest of the three and produces smoother pictures, while bicubic is the slowest but smoothest with statistically fewer aliases since it takes 16 pixels in calculation (only 4 pixels for bilinear).