When does compositional structure yield compositional generalization? A kernel theory