Is the reason why the time evolution operator is unitary based on purely physical arguments, i.e. that the physical processes that an isolated system undergoes shouldn't depend on any particular instant in time (homogeneity of time); thus two experimenters who conduct the same experiment starting from the same initial state, but at different times, should have the same probability amplitude for that state?! Or is there some mathematical argument as well?
Also, is the reason why the time evolution operator is linear implied by the superposition principle (as an arbitrary state can be expressed as a linear combination of basis states the operator should act linearly as otherwise the state as a whole would evolve differently to the superposition of states that it was initially represented by)?!