A model for analogical reasoning