I can see this both ways, the student should show that they have mastered the foundation concepts before they move on to the next. However, with these kiddos they learn so quickly that they should be accelerated to their level, but when the teachers are not differentiating their schoolwork, there is no one teaching them those concepts which make it difficult for them to get a 95%. I find for my own kids that I think I am teaching them the advanced math concepts, but there are holes of the concepts that I don't think to teach them. Your son should not have to sit through math that he already knows most of, but he also needs his teachers to teach him those "holes" that no one has taught him before.