Semantic Equivalence of Program Schemes and its Syntactic Characterization