 11 Feb, 2016 4 commits


Robbert Krebbers authored

Ralf Jung authored

Ralf Jung authored

Robbert Krebbers authored
Instead, I separate it into a total function and a predicate describe whether the action is allowed or not. This has some advantages: * It is much easier to deal with total functions and predicates in Coq than with functions into option. * Already existing functions do not need to be wrapped. Instead, when using a local update you end up with a sensible side condition as a Coq Prop. * The definition of local updates (and all CMRA instances) no longer depend on option.

 10 Feb, 2016 5 commits


Ralf Jung authored

Ralf Jung authored

Robbert Krebbers authored
This way we avoid many oneoff indexes and no longer need special cases for index 0 in many definitions. For example, the definition of the distance relation on option and excl has become much easier. Also, uPreds no longer need to hold at index 0. In order to make this change possible, we had to change the notions of "contractive functions" and "chains" slightly. Thanks to Aleš Bizjak and Amin Timany for suggesting this change and to help with the proofs.

Ralf Jung authored

Ralf Jung authored

 09 Feb, 2016 1 commit


Robbert Krebbers authored

 05 Feb, 2016 1 commit


Ralf Jung authored

 04 Feb, 2016 3 commits


Robbert Krebbers authored

Robbert Krebbers authored

Robbert Krebbers authored

 03 Feb, 2016 1 commit


Ralf Jung authored

 02 Feb, 2016 3 commits


Robbert Krebbers authored

Robbert Krebbers authored

Robbert Krebbers authored

 01 Feb, 2016 1 commit


Robbert Krebbers authored
Instead, we have just a construction to create a CMRA from a RA. This construction is also slightly generalized, it now works for RAs over any timeless COFE instead of just the discrete COFE. Also: * Put tactics and big_ops for CMRAs in a separate file. * Valid is now a derived notion (as the limit of validN), so it does not have to be defined by hand for each CMRA. Todo: Make the constructions DRA > CMRA and RA > CMRA more uniform.

 19 Jan, 2016 1 commit


Robbert Krebbers authored

 16 Jan, 2016 1 commit


Robbert Krebbers authored

 15 Jan, 2016 1 commit


Robbert Krebbers authored

 14 Jan, 2016 1 commit


Robbert Krebbers authored

 13 Jan, 2016 1 commit


Robbert Krebbers authored

 15 Dec, 2015 3 commits


Robbert Krebbers authored

Robbert Krebbers authored

Robbert Krebbers authored

 11 Dec, 2015 2 commits


Robbert Krebbers authored
Also introduce a notion for valid to be timeless.

Robbert Krebbers authored

 23 Nov, 2015 1 commit


Robbert Krebbers authored

 22 Nov, 2015 1 commit


Robbert Krebbers authored
* Framepreserving updates are now on CMRAs rather than RAs * Excl and auth are now CMRAs * Show that excl and auth are functors * STS is now an CMRA

 20 Nov, 2015 1 commit


Robbert Krebbers authored
* Remove the order from RAs, it is now defined in terms of the ⋅ operation. * Define ownership using the stepindexed order. * Remove the order also from DRAs and change STS accordingly. While doing that, I changed STS to no longer use decidable token sets, which removes the requirement of decidable equality on tokens.

 16 Nov, 2015 2 commits


Robbert Krebbers authored

Robbert Krebbers authored

 11 Nov, 2015 1 commit


Robbert Krebbers authored
