Chemical reactions and porosity changes during sedimentary diagenesis