Question: what is the difference between formal specification and informal specification?
Answer: Formal specifications are required for using formal methods: if we want to prove that a program is correct, we need a formal specification of what properties it should satisfy. ... Instead, informal specifications, often natural language ones, are used.