Logical Analysis and Verification of Cryptographic Protocols - Loria
Logical Analysis and Verification of Cryptographic Protocols - Loria
Logical Analysis and Verification of Cryptographic Protocols - Loria
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
150 CHAPTER 6. ON THE GROUND ENTAILMENT PROBLEMS<br />
S with succedent A. Leaves are ground instances <strong>of</strong> positive unit clauses in S.<br />
A direct pro<strong>of</strong> <strong>of</strong> a ground clause A1, . . . , An → B from S is a direct pro<strong>of</strong> <strong>of</strong> B<br />
from S ∪ {A1, . . . , An}.<br />
A term t occurs in either kind <strong>of</strong> pro<strong>of</strong> if t occurs in a clause or in an atom<br />
labelling the pro<strong>of</strong> tree <strong>and</strong> an atom A occurs in either kind <strong>of</strong> pro<strong>of</strong> if A occurs<br />
in a clause labelling the pro<strong>of</strong> tree. If π is a pro<strong>of</strong>, by T erms(π) (respectively<br />
µ(π)) we denote the set <strong>of</strong> terms (respectively set <strong>of</strong> atoms) occurring in π.<br />
An inference system J is said to be complete if the empty clause can be derived<br />
from any unsatisfiable set <strong>of</strong> clauses. An inference system J is said to be<br />
sound if the empty clause can not derived from any satisfiable set <strong>of</strong> clauses. It<br />
is easy to see that S |= C if <strong>and</strong> only if the ∅ clause is derived from S ∪ ¬C for<br />
any complete <strong>and</strong> sound inference system J.<br />
In the rest <strong>of</strong> this chapter, we will be interested only by the refutational<br />
pro<strong>of</strong>s, <strong>and</strong> for simplicity, we will write pro<strong>of</strong>s instead <strong>of</strong> refutational<br />
pro<strong>of</strong>s. In addition, when the inference system is complete <strong>and</strong> sound,<br />
we will abuse the notation <strong>and</strong> use the notation S |= C to mean that there<br />
is a pro<strong>of</strong> <strong>of</strong> S |= C.<br />
6.1.2 Resolution<br />
The resolution is one <strong>of</strong> the most successful methods for automated pro<strong>of</strong><br />
search. It was developed in [176]. We introduce in this section some <strong>of</strong> the<br />
well-known resolution inference strategies. Some <strong>of</strong> these strategies use orderings,<br />
transitive <strong>and</strong> irreflexive binary relations, on atoms <strong>and</strong> terms. We denote<br />
by ≻a the ordering on atoms <strong>and</strong> by ≻t the ordering on terms.<br />
(Binary) Resolution<br />
The (binary) resolution is described by the following two inference rules:<br />
Resolution<br />
Γ → ∆, A A ′ , Γ ′ → ∆ ′<br />
(Γ, Γ ′ → ∆, ∆ ′ )α<br />
where α is the most general unifier <strong>of</strong> A <strong>and</strong> A ′ .<br />
The clause (Γ, Γ ′ → ∆, ∆ ′ )α is called a resolvent <strong>of</strong> the premises or a conclusion<br />
<strong>of</strong> the inference, <strong>and</strong> the atom Aα is called the resolved atom.<br />
F actoring<br />
Γ → ∆, A, A ′<br />
(Γ → ∆, A)α<br />
where α is the most general unifier <strong>of</strong> A <strong>and</strong> A ′ .