From e5e2fc031608b980df6940357b65a0df33bab2fc Mon Sep 17 00:00:00 2001
From: Jeremiah Willcock
SizeList Requirements. SizeList must model
Collection.
Preconditions.
-std::accumulate(sizes.begin(),sizes.end(),size_type(1),std::times<size_type>()) == this->num_elements(); +std::accumulate(sizes.begin(),sizes.end(),size_type(1),std::multiplies<size_type>()) == this->num_elements(); sizes.size() == NumDims;
Postconditions.
std::equal(sizes.begin(),sizes.end(),this->shape) == true;