Automated support for calculational reasoning