Reasoning In Algebra And Geometry