1. 10 May, 2018 3 commits
    • Dan Frumin's avatar
      Add the parallel fibonacci example · 97c14fd3
      Dan Frumin authored
      Using concurrent runners
    • Dan Frumin's avatar
      Update the concurrent runner specification · 893d16f8
      Dan Frumin authored
      - Get rid of the timelessness condition for Q
      - Allow Q to depend on the argument as well on the result
      - Make it more easy to apply the lemmas by using IntoVal in the public
    • Dan Frumin's avatar
      Implement concurrent runners · 92e8f6d7
      Dan Frumin authored
      - Implement the concurrent runners library
      - Changed the shared bag specification to allow the predicate `P` to
        depend on the bag itself -- this is needed for the `isRunner`
        invariant: since the bag is *part* of the `Runner` class, the bag is
        constructed/allocated before the `Runner` itself is construted; but
        we want the bag invariant to depend on the `Runner` instance.