fault tolerant protocols and trace spaces
play

Fault-tolerant protocols and trace spaces Eric Goubault CEA LIST, - PowerPoint PPT Presentation

Fault-tolerant protocols and trace spaces Eric Goubault CEA LIST, Ecole Polytechnique MMTDC, Bremen, 26th-30th of August 2013 Eric Goubault, CEA LIST, Ecole Polytechnique 1 / 68 Contents of the talk Some directed algebraic topology, in


  1. The index poset M l , n : boolean matrices with l rows and n columns. space obtained by extending X M : for every ( i , j ) such that M ( i , j ) = 1 the forbidden cube i downwards in every direction other than j t 1 t 1 t 1 0 0 0 1 1 1 t 0 t 0 t 0 � 1 � � 0 � � 1 � 0 1 0 1 0 1 0 0 1 alive alive dead Eric Goubault, CEA LIST, Ecole Polytechnique 27 / 68

  2. The index poset, combinatorially P a . V a . P b . V b | P a . V a . P b . V b | P a . V a . P b . V b t 1 t 1 t 1 t 1 1 t 2 t 2 t 2 t 2 0 t 0 t 0 t 0 t 0 � 0 � � 1 � � 0 � � 0 � 0 0 0 0 0 1 0 0 0 0 0 0 0 1 1 0 0 1 1 1 alive alive alive dead Eric Goubault, CEA LIST, Ecole Polytechnique 28 / 68

  3. The index poset Alive and dead? Important matrices are ◮ the dead poset D ( X ) = { M ∈ M C l , n / Ψ( M ) = 1 } . ◮ the index poset C ( X ) = { M ∈ M R l , n / Ψ( M ) = 0 } (the alive matrices). ◮ consider the entrywise ordering (0 < 1) on matrices. General results by Martin Raussen: C ( X ) D ( X ) homotopy classes of traces � � (and even more, but let us just start with that!) Eric Goubault, CEA LIST, Ecole Polytechnique 29 / 68

  4. The dead poset Proposition A matrix M ∈ M C l , n is in D ( X ) iff it satisfies i ′ ∈ R ( M ) y i ′ x i ∀ ( i , j ) ∈ [0 : l [ × [0 : n [ , M ( i , j ) = 1 ⇒ j < min j where R ( M ) : indexes of non-null rows of M. Example t 1 y 1 1 1 x 1 x 0 1 = 1 < 2 = min( y 0 1 , y 1 � 0 � 1 1 ) 1 M = y 0 x 1 0 = 2 < 3 = min( y 0 0 , y 1 1 0 0 ) 1 0 x 0 1 t 0 x 0 0 x 1 0 y 0 0 y 1 0 Eric Goubault, CEA LIST, Ecole Polytechnique 30 / 68

  5. Example, scan/update in dimension 2 3 dead matrices t 1 t 1 t 1 0 0 0 1 1 1 t 0 t 0 t 0 � 1 1 � � 0 0 � � 1 0 � 0 0 1 1 0 1 Eric Goubault, CEA LIST, Ecole Polytechnique 31 / 68

  6. The index poset Proposition A matrix M is in C ( X ) iff for every N ∈ D ( X ) , N � � M. Remark N � � M: there exists ( i , j ) s.t. N ( i , j ) = 1 and M ( i , j ) = 0 . Remark Since C ( X ) is downward closed it will be enough to compute the set C max ( X ) of maximal alive matrices. Eric Goubault, CEA LIST, Ecole Polytechnique 32 / 68

  7. Connected components Definition Two matrices M and N are connected when M ∧ N does not contain any null row. ( M ∧ N : pointwise min of M and N ) Proposition The connected components of C ( X ) are in bijection with homotopy classes of traces b → e in X. Eric Goubault, CEA LIST, Ecole Polytechnique 33 / 68

  8. Example Scan/update in dimension 2 - 1 round u . s | u . s generates a trace space made of 3 distinct points: t 1 t 1 t 1 t 0 t 0 t 0 � 1 � � 0 � � 0 � 0 1 1 M 1 = M 2 = M 3 = 1 0 0 1 1 0 Eric Goubault, CEA LIST, Ecole Polytechnique 34 / 68

  9. Some combinatorial considerations Hypergraph transversal ◮ An hypergraph H = ( V , E ) consists of a set V of vertices and a set E of edges, where an edge is a subset of V ◮ A transversal T of H is a subset of V such that T ∩ e � = ∅ for every edge e ∈ E . D ( X ) ⇒ hypergraph H : ◮ vertices: [0 : l [ × [0 : n [ ◮ hyperedges: { ( i , j ) / D ( i , j ) = 1 } ( D is a matrix in D ( X )) The sets { ( i , j ) / M ( i , j ) = 0 } , where M is a maximal matrix of C ( X ), correspond to minimal transversals (wrt inclusion order) of H . Eric Goubault, CEA LIST, Ecole Polytechnique 35 / 68

  10. Some combinatorial considerations First dead matrix: t 1 1 1 0 0 0 1 t 0 Eric Goubault, CEA LIST, Ecole Polytechnique 35 / 68

  11. Some combinatorial considerations Second dead matrix: t 1 0 0 0 1 1 1 t 0 Eric Goubault, CEA LIST, Ecole Polytechnique 35 / 68

  12. Some combinatorial considerations Third and last (minimal) dead matrix: t 1 1 0 0 0 1 1 t 0 Eric Goubault, CEA LIST, Ecole Polytechnique 35 / 68

  13. Some combinatorial considerations First (maximal) alive matrix: t 1 0 1 0 1 t 0 Eric Goubault, CEA LIST, Ecole Polytechnique 35 / 68

  14. Some combinatorial considerations Second alive matrix: t 1 1 0 1 0 t 0 Eric Goubault, CEA LIST, Ecole Polytechnique 35 / 68

  15. Some combinatorial considerations Third (and last) maximal alive matrix: t 1 0 1 1 0 t 0 Eric Goubault, CEA LIST, Ecole Polytechnique 35 / 68

  16. What is the meaning of traces? t 1 t 1 t 1 t 0 t 0 t 0 � 1 � � 0 � � 0 � 0 1 1 1 0 0 1 1 0 M 1 M 2 M 3 Eric Goubault, CEA LIST, Ecole Polytechnique 36 / 68

  17. What is the meaning of traces? t 1 t 1 t 1 s t 0 t 0 t 0 u � 1 � � 0 � � 0 � 0 1 1 1 0 0 1 1 0 M 1 M 2 M 3 ◮ M 1 : P 1 does its scan before P 0 does its update ◮ M 1 : P 1 does not know the current value of P 0 but P 0 does Eric Goubault, CEA LIST, Ecole Polytechnique 36 / 68

  18. What is the meaning of traces? t 1 t 1 t 1 s u t 0 t 0 t 0 u s � 1 � � 0 � � 0 � 0 1 1 1 0 0 1 1 0 M 1 M 2 M 3 ◮ M 1 : P 1 does its scan before P 0 does its update ◮ M 2 : P 0 does its scan before P 1 does its update ◮ M 1 : P 1 does not know the current value of P 0 but P 0 does ◮ M 2 : P 0 does not know the current value of P 1 but P 1 does Eric Goubault, CEA LIST, Ecole Polytechnique 36 / 68

  19. What is the meaning of traces? t 1 t 1 t 1 s s u u t 0 t 0 t 0 u s u s � 1 � � 0 � � 0 � 0 1 1 1 0 0 1 1 0 M 1 M 2 M 3 ◮ M 1 : P 1 does its scan before P 0 does its update ◮ M 2 : P 0 does its scan before P 1 does its update ◮ M 3 : P 0 and P 1 do update, then do there scan together ◮ M 1 : P 1 does not know the current value of P 0 but P 0 does ◮ M 2 : P 0 does not know the current value of P 1 but P 1 does ◮ M 3 : P 0 and P 1 know their values Eric Goubault, CEA LIST, Ecole Polytechnique 36 / 68

  20. Link with the protocol complex t 1 t 1 t 1 t 0 t 0 t 0 � 1 � � 0 � � 0 � 0 1 1 1 0 0 1 1 0 Protocol complex: � 0 . 11 � 1 . 11 � 0 . 10 1 . 01 (1 . 01 (resp. 0 . 10) means P 1 (resp. P 0 ) knows only its own value; 1 . 11 (resp. 0 . 11) means P 1 (resp. P 0 ) knows all values) Eric Goubault, CEA LIST, Ecole Polytechnique 37 / 68

  21. Link with the protocol complex t 1 t 1 t 1 t 0 t 0 t 0 � 1 � � 0 � � 0 � 0 1 1 1 0 0 1 1 0 M 1 Protocol complex: 1 . 01 M 1 � 0 . 11 � 1 . 11 � 0 . 10 Eric Goubault, CEA LIST, Ecole Polytechnique 37 / 68

  22. Link with the protocol complex t 1 t 1 t 1 t 0 t 0 t 0 � 1 � � 0 � � 0 � 0 1 1 1 0 0 1 1 0 M 1 M 3 Protocol complex: 1 . 01 M 1 � 0 . 11 M 3 � 1 . 11 � 0 . 10 M 3 differs from M 1 by just a 1 (connected) Eric Goubault, CEA LIST, Ecole Polytechnique 37 / 68

  23. Link with the protocol complex t 1 t 1 t 1 t 0 t 0 t 0 � 1 � � 0 � � 0 � 0 1 1 1 0 0 1 1 0 M 1 M 2 M 3 Protocol complex: 1 . 01 M 1 � 0 . 11 M 3 � 1 . 11 M 2 � 0 . 10 M 3 differs from M 2 by just a 1 (connected) Eric Goubault, CEA LIST, Ecole Polytechnique 37 / 68

  24. This is actually the minimal transversal hypergraph! (vertices are indexes in the matrices, hitting sets are hyper-edges): . . t 1 t 1 t 1 t 0 t 0 t 0 . . � 1 � � 0 � � 0 � 0 1 1 1 0 0 1 1 0 M 2 M 3 M 1 M 1 M 2 M 3 Eric Goubault, CEA LIST, Ecole Polytechnique 38 / 68

  25. More rounds? clean-memory/layered immediate snapshot t 1 s u s u u s u s t 0 Iterated subdivision (fractal) of the protocol complex (round 1): 1 . 01 M 1 � 0 . 11 M 3 � 1 . 11 M 2 � 0 . 10 Eric Goubault, CEA LIST, Ecole Polytechnique 39 / 68

  26. � � � � � Clean-memory model t 1 t 0 Iterated subdivision (fractal) of the protocol complex (round 2): � 0 . 1111) � 1 . 0111 � 0 . 1101 � 1 . 1101 1 . 0101 0 . 0101 1 . 1111 0 . 0111 1 . 1101 0 . 1111 Eric Goubault, CEA LIST, Ecole Polytechnique 40 / 68

  27. � � � � � Clean-memory model t 1 t 0 Iterated subdivision (fractal) of the protocol complex (round 2): 11 � 0 . 1111) 1 � 1 . 0111 1 � 0 . 1101 � 1 . 1101 1 . 0101 0 . 0101 1 . 1111 0 . 0111 1 . 1101 0 . 1111 Eric Goubault, CEA LIST, Ecole Polytechnique 40 / 68

  28. � � � � � Clean-memory model t 1 t 0 Iterated subdivision (fractal) of the protocol complex (round 2): 11 � 0 . 1111) 13 � 1 . 0111 1 � 0 . 1101 � 1 . 1101 1 . 0101 0 . 0101 1 . 1111 0 . 0111 1 . 1101 0 . 1111 Eric Goubault, CEA LIST, Ecole Polytechnique 40 / 68

  29. � � � � � Clean-memory model t 1 t 0 Iterated subdivision (fractal) of the protocol complex (round 2): 11 � 0 . 1111) 13 � 1 . 0111 12 � 0 . 1101 � 1 . 1101 1 . 0101 0 . 0101 1 . 1111 0 . 0111 1 . 1101 0 . 1111 Eric Goubault, CEA LIST, Ecole Polytechnique 40 / 68

  30. � � � � � Clean-memory model t 1 t 0 Iterated subdivision (fractal) of the protocol complex (round 2): 31 � 1 . 1101 � 0 . 1111) � 1 . 0111 � 0 . 1101 1 . 0101 3 3 0 . 0101 1 . 1111 0 . 0111 1 . 1101 0 . 1111 Eric Goubault, CEA LIST, Ecole Polytechnique 40 / 68

  31. � � � � � Clean-memory model t 1 t 0 Iterated subdivision (fractal) of the protocol complex (round 2): 31 � 1 . 1101 � 0 . 1111) � 1 . 0111 � 0 . 1101 1 . 0101 33 3 0 . 0101 1 . 1111 0 . 0111 1 . 1101 0 . 1111 Eric Goubault, CEA LIST, Ecole Polytechnique 40 / 68

  32. � � � � � Clean-memory model t 1 t 0 Iterated subdivision (fractal) of the protocol complex (round 2): 31 � 1 . 1101 � 0 . 1111) � 1 . 0111 � 0 . 1101 1 . 0101 33 32 0 . 0101 1 . 1111 0 . 0111 1 . 1101 0 . 1111 Eric Goubault, CEA LIST, Ecole Polytechnique 40 / 68

  33. � � � � � Clean-memory model t 1 t 0 Iterated subdivision (fractal) of the protocol complex (round 2): � 0 . 1111) � 1 . 0111 � 0 . 1101 � 1 . 1101 1 . 0101 2 2 21 0 . 0101 1 . 1111 0 . 0111 1 . 1101 0 . 1111 Eric Goubault, CEA LIST, Ecole Polytechnique 40 / 68

  34. � � � � � Clean-memory model t 1 t 0 Iterated subdivision (fractal) of the protocol complex (round 2): � 0 . 1111) � 1 . 0111 � 0 . 1101 � 1 . 1101 1 . 0101 2 23 21 0 . 0101 1 . 1111 0 . 0111 1 . 1101 0 . 1111 Eric Goubault, CEA LIST, Ecole Polytechnique 40 / 68

  35. � � � � � Clean-memory model t 1 t 0 Iterated subdivision (fractal) of the protocol complex (round 2): � 0 . 1111) � 1 . 0111 � 0 . 1101 � 1 . 1101 1 . 0101 22 23 21 0 . 0101 1 . 1111 0 . 0111 1 . 1101 0 . 1111 Eric Goubault, CEA LIST, Ecole Polytechnique 40 / 68

  36. Hence Theorem The clean memory model for n processes at round r produces a subdivided n simplex (up to some “flares” which do not affect ( n − 1)-connectedness) (The flares are ruled out, classically, by the layered execution requirement) ◮ Clear relation with underlying geometric semantics ◮ All is fine, but is there a new result here? Not yet... Eric Goubault, CEA LIST, Ecole Polytechnique 41 / 68

  37. Example: same-memory model Much more complicated! But fits in our framework perfectly t 1 t 0 Eric Goubault, CEA LIST, Ecole Polytechnique 42 / 68

  38. Example: same-memory model Much more complicated! But fits in our framework perfectly t 1 t 0 → each block (1 unfolding) creates an ( n − 1)-connected complex Eric Goubault, CEA LIST, Ecole Polytechnique 42 / 68

  39. Example: same-memory model Much more complicated! But fits in our framework perfectly t 1 t 0 → each block (1 unfolding) creates an ( n − 1)-connected complex → glued under some recurrence relation Eric Goubault, CEA LIST, Ecole Polytechnique 42 / 68

  40. Example: same-memory model Much more complicated! But fits in our framework perfectly t 1 t 0 → each block (1 unfolding) creates an ( n − 1)-connected complex → glued under some recurrence relation → whose relations make it a contractible scheme for pasting blocks Eric Goubault, CEA LIST, Ecole Polytechnique 42 / 68

  41. Example: same-memory model Much more complicated! But fits in our framework perfectly t 1 t 0 → each block (1 unfolding) creates an ( n − 1)-connected complex → glued under some recurrence relation → whose relations make it a contractible scheme for pasting blocks → hence (nerve lemma), creates an ( n − 1)-connected protocol complex! (not previously described, as this does not create an iterated subdivided simplex) Eric Goubault, CEA LIST, Ecole Polytechnique 42 / 68

  42. In general...: interval posets and schedules Interval posets ◮ Let S be a set of closed intervals in R (i.e. of elements of the form [ a , b ], a , b in R ) ◮ We define the partial order: [ a , b ] � [ c , d ] ⇔ b � c ◮ ( S , � ) is called an interval poset ◮ Are very well described, combinatorially ◮ For instance Fishburn’s theorem (equivalence with (2+2)-free posets) ◮ And number of such posets on n elements is well known, example: 1,3,19,207,3451, . . . (this is A079144 on OEIS) Eric Goubault, CEA LIST, Ecole Polytechnique 43 / 68

  43. Theorem The dihomotopy classes of maximal paths, for the 1-round scan/update model for n processes, is in bijection with the interval posets on n elements. The bijection associates to each dihomotopy class [ p ] the set of intervals in [0 , 1] ( p ◦ π i ) − 1 ([ u i , s i ]) ( i = 1 , . . . , n ) Proof relies on the characterization of dihomotopy classes through alive matrices, hence dead matrices - recall condition on being dead, as some interval inequalities! Eric Goubault, CEA LIST, Ecole Polytechnique 44 / 68

  44. Example, in dimension 2 t 1 t 1 t 1 s 2 s 2 s 2 0 0 0 u 2 u 2 u 2 1 1 1 t 0 t 0 t 0 u 1 s 1 u 1 s 1 u 1 s 1 [ u 2 , s 2 ] < [ u 1 , s 1 ] [ u 1 , s 1 ] , [ u 2 , s 2 ] [ u 2 , s 2 ] < [ u 1 , s 1 ] Eric Goubault, CEA LIST, Ecole Polytechnique 45 / 68

  45. What is the structure of the protocol complex now? Extension order on posets Let ( S 1 � 1 ) and ( S 2 , � 2 ) be two partial order on some sets S 1 ⊆ S 2 . We say that � 1 ⇒ � 2 if ∀ s , t ∈ S 1 , s � 1 t ⇒ s � 2 t . When S 1 = S 2 , this is the linearization order. Importance of the extension order for our purpose Let � 1 and � 2 be interval orders on the same set of cardinal n + 1. If � 1 is a linearization of � 2 then the corresponding n -simplexes share a common ( n − 1) face. In fact, the face poset of the protocol complex is given by the extension order on interval posets up to n elements Eric Goubault, CEA LIST, Ecole Polytechnique 46 / 68

  46. Structure of the protocol complex Corollary The protocol complex for scan/update in dimension n , for one round, is homotopy equivalent to the order complex for the extension order on interval posets up to n elements. (since the order complex of the face poset is just the barycentric subdivision) Theorem The protocol complex for the scan/update model, in dimension n , for one round, is an ( n − 1)-connected simplicial set. It is a subdivision of ∆[ n ] plus some extra contractible “flares”. The flares are ruled out, classically, by the layered execution requirement Eric Goubault, CEA LIST, Ecole Polytechnique 47 / 68

  47. Trace space 19 maximal alive matrices (for 53 dead ones) 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 0 1 0 0 1 0 0 0 1 0 0 1 0 1 0 0 1 0 0 0 0 1 1 0 0 0 0 1 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 1 0 0 1 0 0 1 0 0 1 0 0 0 1 0 1 0 0 1 0 0 0 0 1 0 0 1 0 0 1 1 0 0 0 1 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 1 0 0 1 0 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 1 0 0 0 1 0 1 0 0 1 0 0 0 0 1 0 0 1 0 0 1 1 0 0 0 0 1 0 1 0 0 1 0 0 1 0 1 0 0 1 0 0 0 0 1 0 0 1 0 0 1 0 0 1 1 0 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 1 0 0 1 0 0 1 0 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 1 0 0 0 1 0 0 1 0 Eric Goubault, CEA LIST, Ecole Polytechnique 48 / 68

  48. Reorganizing things a bit... 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 0 1 0 0 1 0 0 0 1 0 0 1 0 1 0 0 1 0 0 0 0 1 1 0 0 0 0 1 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 4 2 0 3 3 0 2 3 1 2 4 0 1 4 1 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 1 0 0 1 0 0 1 0 0 1 0 0 0 1 0 1 0 0 1 0 0 0 0 1 0 0 1 0 0 1 1 0 0 0 1 0 1 0 0 0 1 0 0 1 0 4 1 1 3 2 1 3 1 2 2 2 2 1 3 2 0 1 0 0 1 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 1 0 0 1 0 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 1 0 0 0 1 0 1 0 0 1 0 0 0 0 1 0 0 1 0 0 1 1 0 0 0 0 1 0 1 0 0 1 0 0 1 0 1 0 0 1 0 0 0 4 2 1 2 3 0 3 3 4 0 2 3 0 3 0 0 1 0 0 1 0 0 1 0 0 1 1 0 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 1 0 0 1 0 0 1 0 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 1 0 0 0 1 0 0 1 0 2 1 3 2 0 4 1 1 4 0 2 4 Eric Goubault, CEA LIST, Ecole Polytechnique 49 / 68

  49. 1 of symmetry type (2,2,2) 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 0 1 0 0 1 0 0 0 1 0 0 1 0 1 0 0 1 0 0 0 0 1 1 0 0 0 0 1 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 4 2 0 3 3 0 2 3 1 2 4 0 1 4 1 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 1 0 0 1 0 0 1 0 0 1 0 0 0 1 0 1 0 0 1 0 0 0 0 1 0 0 1 0 0 1 1 0 0 0 1 0 1 0 0 0 1 0 0 1 0 4 1 1 3 2 1 3 1 2 2 2 2 1 3 2 0 1 0 0 1 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 1 0 0 1 0 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 1 0 0 0 1 0 1 0 0 1 0 0 0 0 1 0 0 1 0 0 1 1 0 0 0 0 1 0 1 0 0 1 0 0 1 0 1 0 0 1 0 0 0 4 2 1 2 3 0 3 3 4 0 2 3 0 3 0 0 1 0 0 1 0 0 1 0 0 1 1 0 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 1 0 0 1 0 0 1 0 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 1 0 0 0 1 0 0 1 0 2 1 3 2 0 4 1 1 4 0 2 4 Eric Goubault, CEA LIST, Ecole Polytechnique 50 / 68

  50. 6 of symmetry type (3,2,1) 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 0 1 0 0 1 0 0 0 1 0 0 1 0 1 0 0 1 0 0 0 0 1 1 0 0 0 0 1 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 4 2 0 3 3 0 2 3 1 2 4 0 1 4 1 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 1 0 0 1 0 0 1 0 0 1 0 0 0 1 0 1 0 0 1 0 0 0 0 1 0 0 1 0 0 1 1 0 0 0 1 0 1 0 0 0 1 0 0 1 0 4 1 1 3 2 1 3 1 2 2 2 2 1 3 2 0 1 0 0 1 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 1 0 0 1 0 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 1 0 0 0 1 0 1 0 0 1 0 0 0 0 1 0 0 1 0 0 1 1 0 0 0 0 1 0 1 0 0 1 0 0 1 0 1 0 0 1 0 0 0 4 2 1 2 3 0 3 3 4 0 2 3 0 3 0 0 1 0 0 1 0 0 1 0 0 1 1 0 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 1 0 0 1 0 0 1 0 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 1 0 0 0 1 0 0 1 0 2 1 3 2 0 4 1 1 4 0 2 4 Eric Goubault, CEA LIST, Ecole Polytechnique 51 / 68

  51. 3 of symmetry type (3,3,0) 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 0 1 0 0 1 0 0 0 1 0 0 1 0 1 0 0 1 0 0 0 0 1 1 0 0 0 0 1 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 4 2 0 3 3 0 2 3 1 2 4 0 1 4 1 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 1 0 0 1 0 0 1 0 0 1 0 0 0 1 0 1 0 0 1 0 0 0 0 1 0 0 1 0 0 1 1 0 0 0 1 0 1 0 0 0 1 0 0 1 0 4 1 1 3 2 1 3 1 2 2 2 2 1 3 2 0 1 0 0 1 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 1 0 0 1 0 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 1 0 0 0 1 0 1 0 0 1 0 0 0 0 1 0 0 1 0 0 1 1 0 0 0 0 1 0 1 0 0 1 0 0 1 0 1 0 0 1 0 0 0 4 2 1 2 3 0 3 3 4 0 2 3 0 3 0 0 1 0 0 1 0 0 1 0 0 1 1 0 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 1 0 0 1 0 0 1 0 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 1 0 0 0 1 0 0 1 0 2 1 3 2 0 4 1 1 4 0 2 4 Eric Goubault, CEA LIST, Ecole Polytechnique 52 / 68

  52. 3 of symmetry type (4,1,1) 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 0 1 0 0 1 0 0 0 1 0 0 1 0 1 0 0 1 0 0 0 0 1 1 0 0 0 0 1 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 4 2 0 3 3 0 2 3 1 2 4 0 1 4 1 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 1 0 0 1 0 0 1 0 0 1 0 0 0 1 0 1 0 0 1 0 0 0 0 1 0 0 1 0 0 1 1 0 0 0 1 0 1 0 0 0 1 0 0 1 0 4 1 1 3 2 1 3 1 2 2 2 2 1 3 2 0 1 0 0 1 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 1 0 0 1 0 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 1 0 0 0 1 0 1 0 0 1 0 0 0 0 1 0 0 1 0 0 1 1 0 0 0 0 1 0 1 0 0 1 0 0 1 0 1 0 0 1 0 0 0 4 2 1 2 3 0 3 3 4 0 2 3 0 3 0 0 1 0 0 1 0 0 1 0 0 1 1 0 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 1 0 0 1 0 0 1 0 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 1 0 0 0 1 0 0 1 0 2 1 3 2 0 4 1 1 4 0 2 4 Eric Goubault, CEA LIST, Ecole Polytechnique 53 / 68

  53. 6 of symmetry type (4,2,0) 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 0 1 0 0 1 0 0 0 1 0 0 1 0 1 0 0 1 0 0 0 0 1 1 0 0 0 0 1 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 4 2 0 3 3 0 2 3 1 2 4 0 1 4 1 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 1 0 0 1 0 0 1 0 0 1 0 0 0 1 0 1 0 0 1 0 0 0 0 1 0 0 1 0 0 1 1 0 0 0 1 0 1 0 0 0 1 0 0 1 0 4 1 1 3 2 1 3 1 2 2 2 2 1 3 2 0 1 0 0 1 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 1 0 0 1 0 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 1 0 0 0 1 0 1 0 0 1 0 0 0 0 1 0 0 1 0 0 1 1 0 0 0 0 1 0 1 0 0 1 0 0 1 0 1 0 0 1 0 0 0 4 2 1 2 3 0 3 3 4 0 2 3 0 3 0 0 1 0 0 1 0 0 1 0 0 1 1 0 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 1 0 0 1 0 0 1 0 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 1 0 0 0 1 0 0 1 0 2 1 3 2 0 4 1 1 4 0 2 4 Eric Goubault, CEA LIST, Ecole Polytechnique 54 / 68

  54. Corresponding to the labelled interval posets on 3 elements (19 of them) (2,2,2) a b c Eric Goubault, CEA LIST, Ecole Polytechnique 55 / 68

  55. Corresponding to the labelled interval posets on 3 elements (19 of them) (3,2,1) a c a b a b c b c a b c b a c c b b a c a Eric Goubault, CEA LIST, Ecole Polytechnique 55 / 68

  56. Corresponding to the labelled interval posets on 3 elements (19 of them) (3,3,0) a c a b a b c b c a b c b a c c a c b b c a b b a b c a a c Eric Goubault, CEA LIST, Ecole Polytechnique 55 / 68

  57. Corresponding to the labelled interval posets on 3 elements (19 of them) (4,1,1) a c a b a b c b c a b c b a c c a c b b c a b b a b c a a c a c b b c a b a c Eric Goubault, CEA LIST, Ecole Polytechnique 55 / 68

  58. Corresponding to the labelled interval posets on 3 elements (19 of them) (4,2,0) a c a b a b c b c a b c b a c c a c b b c a b b a b c a a c c b a c b b c b c a b a c a a c a a b a c b a b b c c Eric Goubault, CEA LIST, Ecole Polytechnique 55 / 68

  59. Example, in dimension 3 Hasse diagram of the corre- t 1 sponding interval poset: [ u 0 , s 0 ] [ u 1 , s 1 ] [ u 2 , s 2 ] (let us call a = [ u 0 , s 0 ], b = t 0 [ u 1 , s 1 ], c = [ u 2 , s 2 ] for the se- t 2 quel) Eric Goubault, CEA LIST, Ecole Polytechnique 56 / 68

  60. Example: in dimension 3 (the 18 other schedules) t 1 t 1 t 1 t 0 t 0 t 0 t 2 t 2 t 2 t 1 t 1 t 1 t 0 t 0 t 0 t 2 t 2 t 2 Eric Goubault, CEA LIST, Ecole Polytechnique 57 / 68

  61. Example: in dimension 3 (the 18 other schedules) t 1 t 1 t 1 t 0 t 0 t 0 t 2 t 2 t 2 t 1 t 1 t 1 t 0 t 0 t 0 t 2 t 2 t 2 Eric Goubault, CEA LIST, Ecole Polytechnique 58 / 68

  62. Example: in dimension 3 (the 18 other schedules) t 1 t 1 t 1 t 0 t 0 t 0 t 2 t 2 t 2 t 1 t 1 t 1 t 0 t 0 t 0 t 2 t 2 t 2 Eric Goubault, CEA LIST, Ecole Polytechnique 59 / 68

  63. Logical interpretation Each interval can be interpreted in terms of “knowledge”, hence the structure of the protocol complex... a c b a b c b c a b a c { 0 . 111 , 1 . 111 , 2 . 111 } { 0 . 111 , 1 . 011 , 2 . 011 } { 0 . 110 , 1 . 110 , 2 . 111 } { 0 . 101 , 1 . 111 , 2 . 101 } a c b b c c b b a c a a { 0 . 111 , 1 . 011 , 2 . 011 } { 0 . 110 , 1 . 110 , 2 . 111 } { 0 . 101 , 1 . 111 , 2 . 101 } { 0 . 100 , 1 . 111 , 2 . 111 } a c a a b b b b c c a c { 0 . 111 , 1 . 010 , 2 . 111 } { 0 . 111 , 1 . 011 , 2 . 011 } { 0 . 111 , 1 . 111 , 2 . 001 } { 0 . 101 , 1 . 111 , 2 . 101 } etc. Eric Goubault, CEA LIST, Ecole Polytechnique 60 / 68

  64. Construction of the protocol complex Eric Goubault, CEA LIST, Ecole Polytechnique 61 / 68

  65. Construction of the protocol complex These are ruled out under the layered execution model Eric Goubault, CEA LIST, Ecole Polytechnique 61 / 68

  66. Construction of the protocol complex Eric Goubault, CEA LIST, Ecole Polytechnique 61 / 68

  67. Construction of the protocol complex Eric Goubault, CEA LIST, Ecole Polytechnique 61 / 68

  68. Construction of the protocol complex Eric Goubault, CEA LIST, Ecole Polytechnique 61 / 68

  69. Trace spaces: prodsimplicial structure ◮ A prod-simplicial space is just a space made up of simplices, and products of simplices, glued together along their faces (natural generalization of cubical and simplicial sets) Eric Goubault, CEA LIST, Ecole Polytechnique 62 / 68

  70. Trace spaces: prodsimplicial structure ◮ A prod-simplicial space is just a space made up of simplices, and products of simplices, glued together along their faces (natural generalization of cubical and simplicial sets) ◮ Example: Eric Goubault, CEA LIST, Ecole Polytechnique 62 / 68

  71. The prodsimplicial structure of trace spaces Each matrix of C represents a prod-simplex, product of one n -simplex per line, n =number of 1 per line minus 1... Recall: t 1 t 0 � 0 � 1 M 3 = 1 0 product of 2 0-simplices = point! Eric Goubault, CEA LIST, Ecole Polytechnique 63 / 68

  72. The prodsimplicial structure of trace spaces Each matrix of C represents a prod-simplex, product of one n -simplex per line, n =number of 1 per line minus 1... ◮ D ( X )(0 , 1) = { (111) } ◮ C ( X )(0 , 1) = { (110) , (101) , (011) } ◮ (0 1 1) (1 0 1) (1 1 0) Eric Goubault, CEA LIST, Ecole Polytechnique 63 / 68

  73. The prodsimplicial structure of trace spaces Each matrix of C represents a prod-simplex, product of one n -simplex per line, n =number of 1 per line minus 1... ◮ C ( X )(0 , 1) = { (110) , (101) , (011) } ◮ and common faces are meet of matrices (0 0 1) (0 1 1) (1 0 1) (0,1,0) (1 0 0) (1 1 0) Eric Goubault, CEA LIST, Ecole Polytechnique 63 / 68

Recommend


More recommend