Skip to content

Social Network

Alcino Cunha edited this page Oct 10, 2019 · 4 revisions

Consider the following model of distributed social network.

sig User {}
sig Post {}
sig DistributedSN {
servers : set Server,
    friends : User -> User
}
sig Server {
     posts : User -> Post, 
     capacity : Int
}
  1. Write the following invariants:
    • Each post is owned by at most one user
    • A user cannot be his or her own friend
    • Friendship is a symmetric relation
    • Server capacity is positive
    • Servers cannot exceed their capacity
  2. Explore different (alternative) replication strategies for posts:
    • Each post is stored in at most one server
    • Each post is stored in at least two servers
  3. Specify the following operations ensuring they preserve the above invariants
    • addPost
Clone this wiki locally