Skip to content
This repository has been archived by the owner on Jun 18, 2021. It is now read-only.

Towards refinement #179

Open
stevana opened this issue Oct 13, 2017 · 2 comments
Open

Towards refinement #179

stevana opened this issue Oct 13, 2017 · 2 comments

Comments

@stevana
Copy link
Collaborator

stevana commented Oct 13, 2017

Refinement is used by the Z/Event-B/TLA+ people as a way to not have to model the whole system in full detail at once. The father of Z/Event-B, Jean-Raymond Abrial, makes the analogy that if you think of a model as the blueprint (in the architecture/engineering sense), then refinement is a way to zoom in and get a more detailed view of the system.

A nice demo of how this plays out in Event-B is given by Abrial in the following video. I've started to port the example from the demo in the example/bank branch in order to better understand it.

I suspect that the necessary bits of the puzzle can be read off from the notion of morphism/(linear) simulation between indexed containers/interaction structures, but I don't see exactly how it all fits together yet.

I'll use this issue for notes. Any thoughts or comments are of course welcome!

@stevana
Copy link
Collaborator Author

stevana commented Jul 24, 2019

Refinement of concurrent objects (via linearisability): www.cs.ox.ac.uk/people/hongseok.yang/paper/TCS10-concurrent-objects.pdf

@stevana
Copy link
Collaborator Author

stevana commented Jul 24, 2019

On composing state machines a la Harel's state charts: https://gist.github.com/andymatuschak/d5f0a8730ad601bcccae97e8398e25b2

Also see:

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

1 participant