Webpages tagged with «formal methods»

Published June 1, 2018 3:49 PM

The Department of Informatics organizes and hosts the  30th Nordic Workshop on Programming Theory (NWPT'18), 24-26 October 2018. Submission deadline 1.September,.


See the conference's  webpage http://nwpt2018.ifi.uio.no/ for further information




Published Oct. 18, 2017 3:18 PM
Published Sep. 25, 2017 9:01 PM

The presentation by Daniel Fava at the Doctoral Symposium of the 13th International  integrated Formal Methods (iFM 2017) won the award for  the symposium's best presentation (shared with a second winner). The presentation covers joint work with Martin Steffen, Volker Stolz, and Stian Valle, about   ``An Operational Semantics for a Weak Memory Model with Buffered Writes, Message Passing, and Goroutines''.


Published Sep. 23, 2016 1:45 PM

by Lars Tveito

Real-time collaboration allows multiple users to view and edit a document simultaneously over a network. In this thesis, we develop a new protocol, called Shared Buffer, which enables real-time collaboration in existing editors. Shared Buffer leverages a client-server architecture and minimizes the implementation effort of the client-side algorithm. It achieves this without degrading the responsiveness of the editor.

The greatest challenge of a real-time collaborative system is ensuring consistency between the distributed copies of the document. We chose eventual consistency as the consistency model, which essentially states that if all users stop typing, then eventually they will look at the same document.

We apply a formal verification technique called model checking, using it as a tool to validate the protocol. The behavior of the system is formally specified in Maude, a language based on equational and rewriting logic. Linear Temporal Logic (LTL) is used to formalize the consistency model. Using the Maude LTL model checker, we have verified that the system exhibits eventual consistency for a limited number of clients and operations.

A Shared Buffer server has been implemented in Clojure, a modern functional language with strong support for concurrency. Client implementations have been developed as an extension for Emacs, a widely used text editor, and as a library for the Python programming language.

Published Dec. 3, 2015 2:39 PM
Published Jan. 27, 2012 12:32 PM
Published Mar. 3, 2011 8:37 PM
Published Feb. 11, 2011 9:51 AM

The Reliable Systems group PSY (formerly PMA) teaches the following courses:

Published Nov. 9, 2010 10:47 AM
Published Nov. 4, 2010 2:19 PM
Published Nov. 4, 2010 2:12 PM
Published Nov. 4, 2010 1:50 PM