What is the difference between Formal Logic and Formal Methods?

421 Views Asked by At

I understand that Formal logic refers to methods like Propositional logic, Predicate logic and Temporal Logic.

But what is the relationship between Formal logic and Formal methods. I first thought they were same but I realize they are referring to different concepts, but related in some way. Thanks in advance.

1

There are 1 best solutions below

0
On

The distinction between formal and informal logic is one most often made in philosophical circles. (See, for instance, this Wikipedia page.

In the context of formal methods, when one says "logic," without adjectives, one means "formal logic."

In software and hardware engineering, the distinction between "formal" and "informal" usually refers to the guarantees that verification and synthesis methods provide.

So, for instance, non-exhaustive testing of a program or a model of some hardware is considered informal verification, whereas model checking applied to either artifact is considered formal verification.

There are methods that straddle the boundary between formal and informal, for instance methods that rely on decision procedures like concolic testing and constrained random simulation. Sometimes these methods are dubbed "semiformal."

There are also those who prefer to distinguish between dynamic and static analysis rather than between formal and informal. It depends on what differences among approaches one is trying to highlight.