To the extent that X, Y, and Z can be written formally within the programming language, program analysis at least in principle is fully capable of proving such a statement. I apologize if this comes off as rude, but your statement that “we haven’t the foggiest idea how to do this” is flat-out false. While there are certainly unique challenges to reasoning about the sort of code that gets written in machine learning, it seems to me that the main reason we don’t have well-developed analysis tools is that most code doesn’t look like machine learning code, and so there has been little pressure to develop such tools.
To the extent that X, Y, and Z can be written formally within the programming language, program analysis at least in principle is fully capable of proving such a statement. I apologize if this comes off as rude, but your statement that “we haven’t the foggiest idea how to do this” is flat-out false. While there are certainly unique challenges to reasoning about the sort of code that gets written in machine learning, it seems to me that the main reason we don’t have well-developed analysis tools is that most code doesn’t look like machine learning code, and so there has been little pressure to develop such tools.