Rigorous Reasoning