We improve the software productivity and quality by automating the software development process. Tools automatically analyze and verify properties of systems (whether the system is only a requirement specification, already a design model or even a piece of program code). The tools are software artefacts that are themselves applied to software artefacts. Analysis and verification is providing proofs, i.e., an activity that is originally proper to mathematicians. We mechanize this activity, for proofs about properties of systems. How is this possible?