@Article{ Padovani10, author = {Luca Padovani}, title = {{C}ontract-{B}ased {D}iscovery of {W}eb {S}ervices {M}odulo {S}imple {O}rchestrators}, journal = {Theoretical Computer Science}, volume = {411}, pages = {3328-3347}, year = {2010}, issn = {0304-3975}, url = {http://www.di.unito.it/~padovani/Papers/OrchestratorSynthesisLong.pdf} , publisher = {Elsevier}, doi = {10.1016/j.tcs.2010.05.002}, abstract = {Web services are distributed processes exposing a public description of their behavior, or contract. The availability of repositories of Web service descriptions enables interesting forms of dynamic Web service discovery, such as searching for Web services having a specified contract. This calls for a formal notion of contract equivalence satisfying two contrasting goals: being as coarse as possible so as to favor Web services reuse, and guaranteeing successful client/service interaction. We study an equivalence relation that achieves both goals under the assumption that client/service interactions may be mediated by simple orchestrators. In the framework we develop, orchestrators play the role of proofs (in the Curry-Howard sense) justifying an equivalence relation between contracts. This makes it possible to automatically synthesize orchestrators out of Web services contracts.} }