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.
2.1. PRELIMINARIES 45<br />
• Ei ⊆ Ei+1 for i ∈ {1, . . . , n − 1}.<br />
In the rest <strong>of</strong> this document, we will make use <strong>of</strong> the modified I-ground<br />
constraint systems (Definition 23) instead <strong>of</strong> the I-ground constraint system<br />
(Definition 21), <strong>and</strong> for the aim <strong>of</strong> simplicity, we will abuse <strong>of</strong> the notation <strong>and</strong><br />
call modified I-ground constraint systems by I-ground constraint systems.<br />
An I-ground constraint system C = (E1 ⊲ t1, . . . , En ⊲ tn) is satisfied, <strong>and</strong> we<br />
I<br />
write |=I C, if for all i ∈ {1, . . . , n} we have ti ∈ Ei , <strong>and</strong> ti, Ei in normal form.<br />
Definition 24 (solved form) A modified I-constraint system (E1 ⊲ t1, . . . , En ⊲ tn) is<br />
said to be in solved form if for all i, we have ti ∈ X .<br />
Lemma 9 Let C be a modified I-constraint system, C = (Cα, E ⊲ t, Cβ) such that Cα is<br />
in solved form <strong>and</strong> t �∈ X . Then, for all substitutions σ we have: σ |=I C if <strong>and</strong> only if<br />
σ |=I (Cα, (E \ X ) ⊲ t, Cβ) .<br />
PROOF.<br />
It suffices to prove that if x ∈ E ∩ X <strong>and</strong> σ is a substitution such that σ |=I C,<br />
then we have σ |=I (Cα, (E \ {x}) ⊲ t, Cβ). Given x ∈ E, by definition 20, there<br />
exists a set <strong>of</strong> terms E ′ ⊆ E such that E ′ ⊲ x ∈ Cα. Since σ |=I C we have<br />
σ |=I E ′ ⊲ x, <strong>and</strong> by the fact that E ′ ⊆ E \ {x} we have σ |=I E \ {x} ⊲ x. Since<br />
we also have σ |=I (E ⊲t) then, σ |=I E \{x}⊲t. The reciprocal is obvious since<br />
E \ X ⊆ E. �<br />
Lemma 10 Let C = (Cα, E ⊲ x, Cβ) be a modified I-constraint system such that Cα is<br />
in solved form <strong>and</strong> x /∈ V ar(Cβ) <strong>and</strong> let C ′ = (Cα, Cβ). We have:<br />
1. If σ |= C then σ |= C ′ .<br />
2. If σ ′ |= C ′ then we can extend σ ′ to σ such that σ |= C.<br />
PROOF.<br />
�<br />
1. Let C = (Cα, E ⊲ x, Cβ) <strong>and</strong> let σ be a closed substitution such that σ |= C.<br />
Since x /∈ V ar(Cβ), C ′ is a constraint system. It is trivial that σ |= C ′ .<br />
2. Let σ ′ be a closed substitution such that σ ′ |= C ′ . Since V ar(E) ⊆ V ar(Cα),<br />
σ ′ is defined on V ar(Cα, E, Cβ). We have two cases:<br />
• If x /∈ V ar(Cα) then σ ′ (x) is not defined <strong>and</strong> x /∈ V ar(E). We then<br />
extend σ ′ to σ as follows:<br />
σ(y) = σ ′ (y) for y ∈ Supp(σ ′ ), σ(x) is a closed term in E.<br />
Since x /∈ V ar(Cα, Cβ, E) <strong>and</strong> xσ ∈ Eσ, we deduce that σ |= C.<br />
• If x ∈ V ar(Cα) then there exists Ex ⊲ x ∈ Cα. σ ′ |= (Cα, Cβ) implies that<br />
σ ′ |= Ex ⊲ x, <strong>and</strong> since Ex ⊆ E, we have σ ′ |= E ⊲ x <strong>and</strong> hence σ ′ |= C.