Hi Wesley,
Overall, this is going in a great direction. Thanks for all of the effort you and others have been putting into the presentation.
Slide 4: "Only requirement is that failure are eventually reported to all processes which communicate with the failed process." I am wondering if this statement, to be precise, applies only to point-to-point communication? Is it possible for me to never find out about a failure of another process with whom I make collective calls?
Slide 5: I haven't heard the term "algorithm completion" before. Would it be better to call this something like fault tolerant consensus?
Slide 11: You should point out that we have no way to free a communicator, if it is not valid at all correct processes. Processes that noticed the failure wouldn't be able to call revoke, since they don't have a valid handle to the communicator.
Slide 12: Should you clean up the communicator somehow, if the creation failed? Do you revoke or free it? Is this semantic defined -- seems like the same issue as on slide 11?
~Jim.