Filter data from two content types with different criteria in view
a1 and b1 will show nothing, because content type == A AND content type == B is always false for 'A != B'

On filter block, you have a drop down with options. You need to group them into groups connected with OR, so you will have:

published and ( (content type == A and category == aa) or (content type == B and tag == bb ) )