12.12.2012 Views

Lecture Notes in Computer Science 5185

Lecture Notes in Computer Science 5185

Lecture Notes in Computer Science 5185

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

32 I. Agudo, C. Fernandez-Gago, and J. Lopez<br />

Def<strong>in</strong>ition 6 (Parallel Trust Function). A parallel trust function is used to calculate<br />

the trust level associated to a set of paths or cha<strong>in</strong>s of trust statements. It is def<strong>in</strong>ed as,<br />

g : � n<br />

� �� �<br />

∞<br />

n=2 TD×···×TD−→ TD, where T D is a trust doma<strong>in</strong> and<br />

1. g(z1,...,zi−1,zi,zi+1,...,zn)=g(z1,...,zi−1,zi+1,...,zn) if zi = 0<br />

2. g(z)=z<br />

g may verify the follow<strong>in</strong>g desirable properties:<br />

– Idempotency, g(z,z,...,z)=z.<br />

– Monotony, g(z1,z2,...,zn) ≤ g(z ′ 1 ,z′ 2 ,...,z′ n ) If zi ≤ z ′ i for alli ∈ N.<br />

– Associativity, g(g(z1,z2),z3)=g(z1,z2,z3)=g(z1,g(z2,z3)).<br />

The generator parallel function, ortheparallel operator, ⊕ for the function g, is<br />

def<strong>in</strong>ed analogously as the operator ⊙.<br />

Def<strong>in</strong>ition 7 (Parallel Operator). A Parallel Operator or Generator Parallel Function<br />

is def<strong>in</strong>ed as a function, ⊕ : TD× TD−→ TD, such that a ⊕ 0 = 0 ⊕ a = a<br />

We say that the two operators ⊕ and ⊙ are distributive if (a ⊕ b)⊙c =(a ⊙ c)⊕(b ⊙ c).<br />

In the case where there are no cycles <strong>in</strong> the trust graph, the set of paths connect<strong>in</strong>g<br />

two any given entities is f<strong>in</strong>ite. Then, given a sequential operator ⊙ and a commutative<br />

parallel operator ⊕,i.e.a ⊕ b = b ⊕ a, the associated trust evaluation, � FG,isdef<strong>in</strong>edas<br />

follows,<br />

Def<strong>in</strong>ition 8. Let S s,t<br />

x be the set of all paths of trust statements for task x start<strong>in</strong>g <strong>in</strong> s and<br />

end<strong>in</strong>g <strong>in</strong> t. For each path p ∈ S s,t<br />

x represented as s v1 vn<br />

−→··· −→ tletzpbe v1 ⊙···⊙vn,<br />

then � FG(s,t,x) is def<strong>in</strong>ed as �<br />

p∈S s,t<br />

x zp.<br />

Given a fixed sequential operator, for any parallel operator that verifies idempotency and<br />

monotony properties then, z∗ = m<strong>in</strong> s,t<br />

p∈Sx zp ≤ �<br />

p∈S s,t<br />

x zp ≤ max s,t<br />

p∈Sx zp = z∗ . Therefore,<br />

the maximum and m<strong>in</strong>imum possible trust values associated to a path from s to t are the<br />

upper and lower bounds for the trust evaluation � FG.<br />

Fortunately, we do not need to compute the trust values of each path <strong>in</strong> order to<br />

compute those bounds, i.e. z∗ and z∗ . In this case we can use an algorithm, adapted<br />

from the Dijkstra algorithm [8], to f<strong>in</strong>d for example, the maximum trust path from a<br />

fixed entity s to any other entity on the system. The m<strong>in</strong>imum trust path can be computed<br />

<strong>in</strong> an analogous way.<br />

This is a particular case of a trust evaluation where we use the maximum function as<br />

a parallel function. Unfortunately we can not generalize this k<strong>in</strong>d of algorithms for other<br />

comb<strong>in</strong>ations of parallel and sequential functions as it heavily relies on the properties<br />

of the max and m<strong>in</strong> functions.<br />

3.2 Perform<strong>in</strong>g Trust Computations Us<strong>in</strong>g Matrices<br />

Let us first assume the case where there are no cycles <strong>in</strong> the trust graph. We could model<br />

the trust network as a matrix, A where each element aij represents the trust level that

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!