Hi Luca: congratulations to your ESEC 2001 paper which I put temporarily into: http://www.ccs.neu.edu/research/demeter/related-work/interface-automata/ for my team to read. I am glad we touched base. I understood your example from which I see so many commonalities. Our work was also influenced by Nancy Lynch because one of her students, Boaz Patt-Shamir, was influential in our work. Here is your example in our notation: (I had to switch nodes and edges) strategy graph: {Msg -> Ok, Ok -> Msg} class graph: Msg = Send1. Send1 = Ack Nack1. Nack1 = Send2. Send2 = Ack Nack2. Nack2 = Fail. Fail = Msg. Ack = Ok. Ok = Msg. selects the following subgraph (collapsed traversal graph): http://www.ccs.neu.edu/research/demeter/biblio/strategies.html Msg = Send1. Send1 = Ack Nack1. Nack1 = Send2. Send2 = Ack. Ack = Ok. Ok = Msg. Check: http://www.ccs.neu.edu/research/demeter/DJ/docs/api/edu/neu/ccs/demeter/dj/ClassGraph.html In our DJ Library we have a constructor: public ClassGraph(ClassGraph cg, Strategy s) throws TraversalGraphException Make a class graph with just the classes and edges in cg reachable by following s. that let's you do what seems to be isomorphic to your automata composition. The exception is thrown if the two automata are not compatible. (cg and s are automata and the result is an automaton that is a smaller version of cg). In your paper you also talk about refinement. We have a paper on that topic also with complexity results. http://www.ccs.neu.edu/research/demeter/biblio/graph-refine.html Another related paper is: @ARTICLE{gener-comp-j:jens-boaz-karl, AUTHOR = "Jens Palsberg and Boaz {Patt-Shamir} and Karl Lieberherr", TITLE = "A New Approach to Compiling Adaptive Programs", JOURNAL = "Science of Computer Programming", YEAR = 1997, PAGES = "303-326", MONTH = "", VOLUME = 29, NUMBER = "3" } Finally, if you would like to use the basic TraversalGraph computation algorithm, it is in: http://www.ccs.neu.edu/research/demeter/AP-Library/ I am sure there are some differences between your work and our work but there is a nice overlap. Have you thought of using your techniques to generate adapter code? Best regards, -- Karl Dear Karl, the paper on "interface automata" was accepted at ESEC/FSE 2001. We haven't prepared the final version yet, but I attach to this email the submitted version. You will find the final version, when it will be ready, on my web page, or on Tom Henzinger's one. Thank you for the pointers to your own work, and for your interest in our work. All the best, Luca On Thu, 7 Jun 2001, Alex Aiken wrote: > Luca, > > Karl Lieberherr (see below) is interested in reading anything you've > published on interface types. Can you follow up with him? > > Thanks, > > Alex