Abstract
The Operational Transformation (OT) approach is a technique for supporting optimistic replication in collaborative and mobile systems. It allows the users to concurrently update the shared data and exchange their updates in any order since the convergence of all replicas, i.e. the fact that all users view the same data, is ensured in all cases. However, designing algorithms for achieving convergence with the OT approach is a critical and challenging issue. In this paper, we address this issue for the important case where the shared data has a linear structure such as lists, texts, ordered XML trees, etc. We analyze the problem and we propose a generic solution with its formal analysis. We also show in this work how to support the formal design of an OT algorithm with a rewrite-based theorem prover. This theorem prover enables us to envisage the large number of cases required for the correctness proof of the algorithm. Since the manual proofs of all previously published algorithms were wrong, this shows the decisive advantage of using an automatic prover in this context.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Armando, A., Rusinowitch, M., Stratulat, S.: Incorporating decision procedures in implicit induction. Journal of Symbolic Computation 34(4), 241–258 (2001)
Barthe, G., Stratulat, S.: Validation of the javacard platform with implicit induction techniques. In: Nieuwenhuis, R. (ed.) RTA 2003. LNCS, vol. 2706, pp. 337–351. Springer, Heidelberg (2003)
Bouhoula, A.: Using induction and rewriting to verify and complete parameterized specifications. Theor. Comput. Sci. 170(1-2), 245–276 (1996)
Bouhoula, A., Kounalis, E., Rusinowitch, M.: Automated Mathematical Induction. Journal of Logic and Computation 5(5), 631–668 (1995)
Cheriton, D.R., Skeen, D.: Understanding the limitations of causally and totally ordered communication. In: SOSP, pp. 44–57 (1993)
Dershowitz, N., Jouannaud, J.-P.: Rewrite systems. In: Handbook of Theoretical Computer Science, vol. B: Formal Models and Sematics (B), pp. 243–320 (1990)
Ellis, C.A., Gibbs, S.J.: Concurrency Control in Groupware Systems. In: SIGMOD Conference, vol. 18, pp. 399–407 (1989)
Guerraoui, R., Hari, C.: On the consistency problem in mobile distributed computing. In: Proceedings of the second ACM international workshop on Principles of mobile computing, pp. 51–57. ACM Press, New York (2002)
Herlihy, M.P., Wing, J.M.: Linearizability: a correctness condition for concurrent objects. ACM Trans. Program. Lang. Syst. 12(3), 463–492 (1990)
Imine, A.: Conception Formelle d’ Algorithmes de Réplication Optimiste. Vers I’ Edition Collaborative dans les Réseaux Pair-á-Pair. Thèse de doctorat, Université Henri Poincaré, Nancy (December 2006)
Imine, A., Molli, P., Oster, G., Rusinowitch, M.: Development of Transformation Functions Assisted by a Theorem Prover. In: Fourth International Workshop on Collaborative Editing (ACM CSCW 2002), Collaborative Computing in IEEE Distributed Systems Online (November 2002)
Imine, A., Molli, P., Oster, G., Rusinowitch, M.: Proving Correctness of Transformation Functions in Real-Time Groupware. In: 8th European Conference of Computer-supported Cooperative Work, Helsinki, Finland, 14.-18. September 2003. Kluwer Academic publishers, Dordrecht (2003)
Imine, A., Molli, P., Oster, G., Rusinowitch, M.: Deductive verification of distributed groupware systems. In: Rattray, C., Maharaj, S., Shankland, C. (eds.) AMAST 2004. LNCS, vol. 3116, pp. 226–240. Springer, Heidelberg (2004)
Jouannaud, J.-P., Kounalis, E.: Automatic proofs by induction in theories without constructors. Inf. Comput. 82(1), 1–33 (1989)
Li, D., Li, R.: Ensuring Content Intention Consistency in Real-Time Group (ed.) In: The 24th International Conference on Distributed Computing Systems (ICDCS 2004), Tokyo, Japan, March 2004, IEEE Computer Society, Washington (2004)
Lushman, B., Cormack, G.V.: Proof of correctness of ressel’s adopted algorithm. Information Processing Letters 86(3), 303–310 (2003)
Molli, P., Oster, G., Skaf-Molli, H., Imine, A.: Using the transformational approach to build a safe and generic data synchronizer. In: Proceedings of the 2003 international ACM SIGGROUP conference on Supporting group work, pp. 212–220. ACM Press, New York (2003)
Ressel, M., Nitsche-Ruhland, D., Gunzenhauser, R.: An Integrating, Transformation-Oriented Approach to Concurrency Control and Undo in Group Editors. In: Proceedings of the ACM Conference on Computer Supported Cooperative Work (CSCW 1996), Boston, Massachusetts, USA, pp. 288–297 (November 1996)
Rusinowitch, M., Stratulat, S., Klay, F.: Mechanical Verification of an Ideal ABR Conformance Algorithm. Journal of Automated Reasoning 30(2), 153–177 (2003)
Saito, Y., Shapiro, M.: Optimistic replication. ACM Comput. Surv. 37(1), 42–81 (2005)
Stratulat, S.: A general framework to build contextual cover set induction provers. Journal of Symbolic Computation 32(4), 403–445 (2001)
Suleiman, M., Cart, M., Ferrié, J.: Concurrent Operations in a Distributed and Mobile Collaborative Environment. In: Proceedings of the Fourteenth International Conference on Data Engineering, Orlando, Florida, USA, February 23-27, 1998, pp. 36–45. IEEE Computer Society Press, Washington (1998)
Sun, C.: The copowerpoint project http://reduce.qpsf.edu.au/copowerpoint/ (2004)
Sun, C., Ellis, C.: Operational transformation in real-time group editors: issues, algorithms, and achievements. In: Proceedings of the 1998 ACM conference on Computer supported cooperative work, pp. 59–68. ACM Press, New York (1998)
Sun, C., Jia, X., Zhang, Y., Yang, Y., Chen, D.: Achieving convergence, causality-preservation and intention-preservation in real-time cooperative editing systems. ACM Transactions on Computer-Human Interaction (TOCHI) 5(1), 63–108 (1998)
Sun, D., Xia, S., Sun, C., Chen, D.: Operational transformation for collaborative word processing. In: CSCW ’04: Proceedings of the 2004 ACM conference on Computer supported cooperative work, New York, NY, USA, 2004, pp. 437–446. ACM Press, New York (2004)
Vidot, N., Cart, M., Ferri é, J., Suleiman, M.: Copies convergence in a distributed real-time collaborative environment. In: Proceedings of the ACM Conference on Computer Supported Cooperative Work (CSCW 2000), Philadelphia, Pennsylvania, USA (December 2000)
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2007 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Imine, A., Rusinowitch, M. (2007). Applying a Theorem Prover to the Verification of Optimistic Replication Algorithms. In: Comon-Lundh, H., Kirchner, C., Kirchner, H. (eds) Rewriting, Computation and Proof. Lecture Notes in Computer Science, vol 4600. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-73147-4_11
Download citation
DOI: https://doi.org/10.1007/978-3-540-73147-4_11
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-73146-7
Online ISBN: 978-3-540-73147-4
eBook Packages: Computer ScienceComputer Science (R0)