Perform convolution 2D + Average pooling in Tensorflow/Keras
(A * B) * C is not equal A * (B * C)
(A * B) is matrix multiply but (B * C) isn't, you can't just reverse the process
Is known that the convolution has the associative property: (A*B)*C=A*(B*C), where (*) denotes the convolutional operator. In keras, perform a 2D Convolution + 2D Average Pooling (with strides=(2,2)) is less expensive that perform only one convolution with strides=(1,1). I think that this is possible applying the associative property and doing first the convolution of kernel B and C, but I'm trying achieve the same result that keras via A*(B*C) instead of (A*B)*C, where A is the image input and B and C are the kernels, but the result differs from keras. 
It's really possible convolve first the kernel, K=B*C and finally convolve the input with K: A*K?